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 才會受影響)
沒有留言:
張貼留言