首頁  >  文章  >  資料庫  >  MySQL 中外鍵約束的預設 ON DELETE 行為是什麼?

MySQL 中外鍵約束的預設 ON DELETE 行為是什麼?

Susan Sarandon
Susan Sarandon原創
2024-11-04 17:30:02766瀏覽

What is the Default ON DELETE Behavior of Foreign Key Constraints in MySQL?

MySQL 外鍵約束:預設刪除行為解釋

使用MySQL 資料庫時,管理外鍵約束對於確保資料完整性至關重要。外鍵關係的基本面向之一是 ON DELETE 行為,它決定刪除對應父行時子行會發生什麼。

預設ON DELETE 行為:解釋

預設情況下,MySQL 將ON DELETE 行為指定為NO ACTION,這表示如果刪除父行會破壞任何外鍵關係,則禁止刪除父行。換句話說,子行必須繼續引用有效的父行。

其他ON DELETE 選項

除了預設行為之外,還有四個其他ON DELETE 選項available:

  • SET NULL: 當刪除父行時,將子表中的外鍵列清空。僅當外鍵列可為空時才允許這樣做。
  • RESTRICT:此選項與 NO ACTION 同義,禁止在影響子行時刪除父行。
  • CASCADE: 自動刪除引用已刪除父行的所有子行。
  • SET DEFAULT: MySQL 不支援此選項,也不應該使用此選項

總結

總結總而言之,MySQL 中預設的ON DELETE 行為是NO ACTION/RESTRICT,這可以防止刪除父行使任何外鍵約束無效。其他選項包括 SET NULL、CASCADE(自動刪除子行)和 SET DEFAULT(MySQL 不支援)。

以上是MySQL 中外鍵約束的預設 ON DELETE 行為是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn