回覆列表
-
1 # nngme46818
-
2 # pietr49411
如果關聯的兩個表一條資訊同時刪除,可用下列方法。設關聯的外來鍵是ID,先設定外來鍵型別為級聯刪除。alter table B add constraint fk_ID foreign key (ID) references A(ID) on delete cascade;然後delete from A where ID=nnnn; 就可以自動刪除對應B表內容了。
修改你的外來鍵設定,達到級聯刪除的目的,具體實現如下: a)先查詢出EMP表和POS表中 外來鍵的名稱(如果你知道 外來鍵名這一步可以省略) select CONSTRAINT_NAME,TABLE_NAME from user_constraints where CONSTRAINT_TYPE ="R" and TABLE_NAME in("EMP","POS"); b)刪除EMP表和POS表上的外來鍵後 重新建立允許級聯刪除的外來鍵模式 alter table EMP drop constraint 外來鍵名; alter table POS drop constraint 外來鍵名; alter table EMP add constraint 外來鍵名 foreign key(DEPT_NO) references DEPT(DEPT_NO) on delete cascade; alter table POS add constraint 外來鍵名 foreign key(DEPT_NO) references DEPT(DEPT_NO) on delete cascade;這樣刪除關聯刪除是自動的