什么是主鍵外鍵
主鍵是用于唯一標(biāo)識(shí)表中每一行數(shù)據(jù)的一列或者多列,不能有重復(fù)值。而外鍵是表中某一列(或一組列),用來(lái)關(guān)聯(lián)另一個(gè)表的主鍵,起到了表與表之間關(guān)聯(lián)的作用。
建立主鍵
在 MySQL 中,可以通過(guò)以下語(yǔ)句建立主鍵:
ALTER TABLE table_name ADD PRIMARY KEY (col_name);
其中,table_name 是要建立主鍵的表名,col_name 是要指定為主鍵的列名,可以指定多個(gè)列用逗號(hào)隔開(kāi)。
建立外鍵
在 MySQL 中,可以通過(guò)以下語(yǔ)句建立外鍵:
ALTER TABLE child_table_name ADD FOREIGN KEY (column_name) REFERENCES parent_table_name(parent_column_name);
其中,child_table_name 是要建立外鍵的表名,column_name 是要指定為外鍵的列名,parent_table_name 是被關(guān)聯(lián)的表名,parent_column_name 是被關(guān)聯(lián)表的主鍵名。需要注意的是,被關(guān)聯(lián)表的主鍵必須是唯一的。
一些注意事項(xiàng)
在建立主鍵和外鍵時(shí)需要注意以下幾點(diǎn):
- 主鍵和外鍵建議使用數(shù)字類型。
- 在建立外鍵前,需要先建立被關(guān)聯(lián)表的主鍵。
- 外鍵約束關(guān)系不能跨數(shù)據(jù)庫(kù)使用,必須在同一個(gè)數(shù)據(jù)庫(kù)中。
- 刪除主鍵時(shí),也會(huì)刪除外鍵約束。
- 刪除外鍵時(shí),不會(huì)刪除被關(guān)聯(lián)表的主鍵。