4
A
回答
9
您可以聲明級聯刪除的外鍵約束,以便在父行被刪除時自動刪除子行。
SQL> create table parent (
2 parent_key number primary key
3 );
Table created.
SQL> create table child (
2 child_key number primary key,
3 parent_key number,
4 constraint fk_child_parent foreign key(parent_key)
5 references parent(parent_key)
6 on delete cascade
7 );
Table created.
SQL> insert into parent values(1);
1 row created.
SQL> insert into child values(10, 1);
1 row created.
SQL> commit;
Commit complete.
SQL> delete from parent where parent_key = 1;
1 row deleted.
SQL> select * from child;
no rows selected
我個人沒有這種級聯的粉絲delete--我寧願看到刪除兌子表爲從父刪除程序的一部分,使得程序的流程都在一個地方。級聯外鍵就像觸發器一樣,它們可以通過添加一些操作來使程序流程嚴重複雜化,這些操作對於開發人員通過代碼進行通讀和跟蹤來說是很難的。
相關問題
- 1. 刪除oracle中的多行
- 2. Oracle |刪除表
- 3. Oracle CTE /子查詢代銷刪除
- 4. 子查詢刪除未在Oracle
- 5. 刪除行從包含具有和GROUP BY子句中的Oracle
- 6. Oracle - 從子表鎖父表中刪除行
- 7. oracle觸發刪除
- 8. Oracle級聯刪除
- 9. 刪除Oracle Schema Scott?
- 10. 防止在Oracle中刪除某些行
- 11. 刪除Oracle表的大量行
- 12. 刪除重複的行中的Oracle
- 13. 在ORACLE SQL中刪除半重複行
- 14. Oracle強制執行軟刪除約束
- 15. 從oracle刪除重複的行
- 16. Oracle作業執行後刪除
- 17. 如何刪除(刪除)Oracle AQ隊列?
- 18. 刪除行由子集
- 19. C#SQL行刪除父行與子行
- 20. PHP MySQL刪除父行和子行
- 21. 刪除Oracle 10中的鎖
- 22. Oracle表刪除循環 -
- 23. oracle |刪除重複記錄
- 24. Oracle - 刪除重疊記錄
- 25. oracle刪除級聯條件
- 26. 正確刪除Oracle ODP.NET DLL?
- 27. 無法刪除外鍵(Oracle)
- 28. Oracle刪除重複字符
- 29. Oracle - 無法刪除表格
- 30. 刪除oracle多個主頁