在 SQL 中,約束在維護資料完整性和確保表內資料一致性方面發揮著至關重要的作用。一項常見任務是更改現有約束以新增或修改其屬性。本文將引導您完成更改約束的步驟,特別關注如何將「ON DELETE CASCADE」子句新增至現有外鍵約束。
原始約束:
假設您有一個名為ACTIVEPROG_FKEY1:
CONSTRAINT ACTIVEPROG_FKEY1 FOREIGN KEY(ActiveProgCode) REFERENCES PROGRAM(ActiveProgCode),
更改約束:
您想要將「ON DELETE CASCADE」子句新增至現有約束。此子句指定如果從父表 (PROGRAM) 中刪除一筆記錄,則子表 (ACTIVEPROG) 中的任何對應記錄也應自動刪除。
更改限制的步驟:
但是,與其他資料庫物件不同,約束不支援直接修改。相反,必須刪除現有限制並使用所需的修改重新建立:
刪除現有限制:
ALTER TABLE your_table DROP CONSTRAINT ACTIVEPROG_FKEY1;
使用「ON DELETE」重新建立約束CASCADE":
ALTER TABLE your_table ADD CONSTRAINT ACTIVEPROG_FKEY1 FOREIGN KEY(ActiveProgCode) REFERENCES PROGRAM(ActiveProgCode) ON DELETE CASCADE;
透過執行下列步驟,您可以成功變更現有約束ACTIVEPROG_FKEY1 以新增「ON DELETE CASCADE」子句。將確保父表中的任何刪除都會自動觸發子表中相關記錄的級聯刪除。
以上是如何將'ON DELETE CASCADE”新增至 SQL 中現有的外鍵約束?的詳細內容。更多資訊請關注PHP中文網其他相關文章!