SQL入門之5 表的建立與修改1

wmlm發表於2007-04-05
幾種約束[@more@]

-- 新增主鍵
alter table orderitems
add constraint orderitems_pk primary key (order#,item#);

-- 新增外來鍵
alter table orders
add constraint orders_customer#_fk foreign key
(customer#) references customers(customer#);

-- 父表記錄刪除後,級聯刪除子表記錄
alter table orders
add constraint orders_customer#_fk foreign key
(customer#) references customers(customer#)
on delete cascade;

-- 使用unique約束
alter table books
add constraint books_title_uk unique (title);

-- 使用check約束,在check中不能引用函式如sysdate,user,rownum,也不能引用儲存在其他行中的值
alter table orders
add constraint orders_shipdate_ck
check (orderdate<= shipdate);

-- 使用not null約束,可以為此約束指定名稱,也可以不指定
alter table books
modify (pubid constraint books_pubid_nn not null);

alter table books
modify (pubid not null);

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/271063/viewspace-908795/,如需轉載,請註明出處,否則將追究法律責任。

相關文章