首頁 >資料庫 >mysql教程 >mysql建表外鍵約束怎麼寫

mysql建表外鍵約束怎麼寫

下次还敢
下次还敢原創
2024-04-22 19:52:001001瀏覽

MySQL外鍵約束語法為:ALTER TABLE child_table ADD FOREIGN KEY (foreign_key_column) REFERENCES parent_table (primary_key_column),可確保兩個表間關係完整性。外鍵約束作用包括:1.資料完整性:約束子表參考必須存在於父表;2.級聯更新:父表主鍵值變動時自動更新所有參考;3.級聯刪除:父表主鍵值刪除時自動刪除所有引用。

mysql建表外鍵約束怎麼寫

MySQL 外鍵約束語法

#在MySQL 中,外鍵限制用於確保兩個表之間的關係完整性。其語法如下:

<code>ALTER TABLE child_table
ADD FOREIGN KEY (foreign_key_column)
REFERENCES parent_table (primary_key_column)</code>

其中:

  • child_table:需要新增外鍵約束的表。
  • foreign_key_columnchild_table 中引用 parent_table 主鍵的欄位。
  • parent_table:被引用的表,其主鍵用於定義約束。
  • primary_key_columnparent_table 中被引用的主鍵列。

外鍵約束的作用

外鍵約束有助於確保以下事項:

  • 資料完整性:防止子表中插入沒有在父表中存在的參考。
  • 級聯更新:當父表中的主鍵值變更時,自動更新所有參考子表中的值。
  • 級聯刪除:當父表中的主鍵值被刪除時,自動刪除所有引用子表中的值。

範例

假設我們有兩個資料表:ordersorder_items

<code>CREATE TABLE orders (
  order_id INT NOT NULL AUTO_INCREMENT,
  customer_id INT NOT NULL,
  PRIMARY KEY (order_id)
);

CREATE TABLE order_items (
  item_id INT NOT NULL AUTO_INCREMENT,
  order_id INT NOT NULL,
  product_id INT NOT NULL,
  PRIMARY KEY (item_id),
  FOREIGN KEY (order_id) REFERENCES orders (order_id)
);</code>

在此範例中,order_items 表的外鍵約束確保了每個order_id 值在orders 表中都存在。這意味著我們無法在 order_items 表中插入沒有在 orders 表中存在的 order_id 值。

以上是mysql建表外鍵約束怎麼寫的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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