oracle數據庫的表的操作

今天,學習oracle數據庫中數據庫的創建和表的創建刪除修改等等操作。開始的時候,數據庫一直連接不上,後來知道原來是幾個服務沒有開啓:OracleXETNSListener,OracleXEClrAgent,OracleServiceXE。參考網址:http://jingyan.baidu.com/article/3d69c5518f2de2f0ce02d747.html

我發現有些大學時候學習sql語句,有的並不適用oracle數據庫。下面是我實踐中用到的:

--創建外鍵1 
CREATE TABLE T_INVOICE
(ID NUMBER(10) NOT NULL,
INVOICE_NO VARCHAR2(30) NOT NULL,
CONSTRAINT PK_INVOICE_ID PRIMARY KEY(ID));

--創建外鍵2
CREATE TABLE T_INVOICE_DETAIL
(ID NUMBER(10) NOT NULL,
AMOUNT NUMBER(10,3),
PIECE NUMBER(10),
INVOICE_ID NUMBER(10),
CONSTRAINT PK_DETAIL_ID PRIMARY KEY(ID));
ALTER TABLE T_INVOICE_DETAIL
ADD CONSTRAINT FK_INVOICE_ID
FOREIGN KEY(INVOICE_ID ) REFERENCES T_INVOICE(ID);

CREATE TABLE T_INVOICE_DETAIL
(ID NUMBER(10) NOT NULL,
AMOUNT NUMBER(10,3),
PIECE NUMBER(10),
INVOICE_ID NUMBER(10),
PRIMARY KEY(ID));
ALTER TABLE T_INVOICE_DETAIL
ADD FOREIGN KEY(INVOICE_ID ) REFERENCES T_INVOICE(ID);

--創建外鍵
create table sc
(sno char(6) not null,
cno char(6) not null,
score numeric(3),
primary key(sno,cno),
FOREIGN KEY (sno) REFERENCES S(SNO),
FOREIGN KEY (cno) REFERENCES C(CNO))
 
--表中添加列,需要將add後面用“(列名)”括起來
alter table s 
add (class_no char(6),address char(40))

--修改某列,增加或者減少寬度
alter table s modify sn char(20)

--修改表名
ALTER TABLE s RENAME TO xx

--修改表列名
ALTER TABLE s RENAME COLUMN xx TO xx1 

--修改字段類型
ALTER TABLE s MODIFY xx NUMBER(20) 

--添加表列
ALTER TABLE s ADD (xx VARCHAR2(40) [,xx VARCHAR2(40)...])

--刪除列(單列或者多列)
ALTER   TABLE   table_name   DROP   {COLUMN   column_names   |   (column_names)}   [CASCADE   CONSTRAINS]

ALTER TABLE s DROP column address



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章