在mysql中可以在建立表格時添加複合主鍵,其語法規則是“PRIMARY KEY [字段1,字段2,…,字段n]”,表示主鍵由多個字段聯合組成。
主鍵約束即在表中定義一個主鍵來唯一確定表中每一行資料的識別碼。主鍵可以是表中的某一列或多列的組合,其中由多列組合的主鍵稱為複合主鍵。
複合主鍵不能包含不必要的多餘列。當把複合主鍵的某一列刪除後,如果剩下的列構成的主鍵仍然滿足唯一性原則,那麼這個複合主鍵是不正確的。這是最小化原則。
如何新增複合主鍵?
可以在建立表格時新增複合主鍵,此時主鍵由多個欄位聯合組成,語法規則如下:
PRIMARY KEY [字段1,字段2,…,字段n]
範例:建立資料表tb_emp,假設表中沒有主鍵id,為了唯一確定一個員工,可以把name、deptId 聯合起來當作主鍵
mysql> CREATE TABLE tb_emp -> ( -> name VARCHAR(25), -> deptId INT(11), -> salary FLOAT, -> PRIMARY KEY(id,deptId) -> ); Query OK, 0 rows affected (0.37 sec) mysql> DESC tb_emp; +--------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+-------------+------+-----+---------+-------+ | name | varchar(25) | NO | PRI | NULL | | | deptId | int(11) | NO | PRI | NULL | | | salary | float | YES | | NULL | | +--------+-------------+------+-----+---------+-------+ 3 rows in set (0.14 sec)
以上是mysql怎麼加入複合主鍵?的詳細內容。更多資訊請關注PHP中文網其他相關文章!