星期四, 12月 01, 2011

foreign key 心得

foreign key 資料乃是參照primary key 的column而來,
主要primary key table 存在資料,foreign key table資料不見得需要存在

但foreign key table中有資料,primary key 肯定有相對應的欄位

若是primary key 有複合欄位,foreign key 也會跟著需要有複合欄位

-
若在foreign key 中有定義delete cascade ,那刪除primary key table 的一筆資料

foreign key table 的相對應record 也會自動被刪掉

反之

若先刪除fk table 資料,在刪除pk table 資料,也是可以的

-
table 要drop ,但存在pk , 其他table 也有fk ,該怎麼下
反之

若先刪除fk table 資料,在刪除pk table 資料,也是可以的

-
table 要drop ,但存在pk , 其他table 也有fk ,該怎麼下

drop table table_name cascade constraint;
這樣所有該table 相對應的constraint (pk , fk 之定義都會被拿掉)
但fk table 的資料持續存在,不會受影響
(除非下了 delete from pk_table; fk_table 才會受影響)

沒有留言:

LinkWithin-相關文件

Related Posts Plugin for WordPress, Blogger...