創(chuàng)建 mysql 外鍵的 sql 語句為:alter table child_table add foreign key (foreign_key_column) references parent_table (parent_key_column) [on delete action] [on update action]; 其中,child_table 為要創(chuàng)建外鍵的表,foreign_key_column 為與父表主鍵關聯(lián)的列,parent_table 為包含外鍵所引用的主關鍵字的表,pa
創(chuàng)建 MySQL 外鍵的 SQL 語句
外鍵介紹
外鍵是一種數據庫約束,它將一個表中的列鏈接到另一個表中的主關鍵字。它確保了數據的完整性,并防止創(chuàng)建引用不存在的記錄。
創(chuàng)建外鍵語句
語法:
ALTER TABLE child_table ADD FOREIGN KEY (foreign_key_column) REFERENCES parent_table (parent_key_column) [ON DELETE action] [ON UPDATE action];
登錄后復制
參數說明:
child_table:要創(chuàng)建外鍵的表。
foreign_key_column:child_table 中與 parent_table 主鍵關聯(lián)的列。
parent_table:包含外鍵所引用的主關鍵字的表。
parent_key_column:parent_table 中的主關鍵字列。
ON DELETE action:當 parent_table 中引用的記錄被刪除時的操作(可選)。可以是 CASCADE(級聯(lián)刪除)、SET NULL(將外鍵列設置為 NULL)或 RESTRICT(不允許刪除)。
ON UPDATE action:當 parent_table 中引用的記錄被更新時的操作(可選)。可以是 CASCADE(級聯(lián)更新)、SET NULL 或 RESTRICT。
示例
創(chuàng)建一個名為 orders 的表并為其創(chuàng)建外鍵,該外鍵引用 customers 表中的 customer_id 主鍵:
ALTER TABLE orders ADD FOREIGN KEY (customer_id) REFERENCES customers (customer_id) ON DELETE CASCADE;
登錄后復制
此外鍵確保 orders 表中的 customer_id 列始終引用 customers 表中存在的客戶。如果嘗試刪除 customers 表中引用的客戶,則與該客戶關聯(lián)的 orders 表中的記錄將被級聯(lián)刪除。