MySQL是一種關系型數據庫管理系統,它支持外鍵約束。外鍵是一個列或列組合,用于鏈接兩個表。它通常用于確保表之間數據的一致性和完整性。
對于兩個表的關聯,一個表中的列稱為“父列”,另一個表中的列稱為“子列”。外鍵在子表中創建,并引用父表中的列。當在子表中插入數據時,外鍵用于確保插入的值是存在于父表中的。這樣可以確保在兩個表之間的關系保持一致。
--創建父表,指定PRIMARY KEY CREATE TABLE parent ( id int PRIMARY KEY, name varchar(50) ); --創建子表,指定FOREIGN KEY CREATE TABLE child ( id int PRIMARY KEY, parent_id int, name varchar(50), FOREIGN KEY (parent_id) REFERENCES parent(id) );
在上面的示例中,我們創建了一個名為“parent”的父表。該表包含兩列:一個名為“id”的主鍵列和一個名為“name”的列。然后,我們創建了一個名為“child”的子表。該表包括三列:一個名為“id”的主鍵列、一個名為“parent_id”的外鍵列和一個名為“name”的列。我們使用FOREIGN KEY關鍵字來指定外鍵。子表中的“parent_id”列引用父表中的“id”列。
當我們向子表中插入數據時,MySQL將自動檢查外鍵約束。如果我們嘗試插入一個不存在于父表中的“parent_id”值,MySQL將引發一個錯誤。通過使用外鍵約束,我們可以確保在兩個表之間的關系保持一致,從而提高數據一致性和完整性。