mysql怎么添加復合主鍵?

mysql中可以在創建表時添加復合主鍵,其語法規則是“PRIMARY KEY [字段1,字段2,…,字段n]”,表示主鍵由多個字段聯合組成。

mysql怎么添加復合主鍵?

主鍵約束即在表中定義一個主鍵來唯一確定表中每一行數據的標識符。主鍵可以是表中的某一列或者多列的組合,其中由多列組合的主鍵稱為復合主鍵。

復合主鍵不能包含不必要的多余列。當把復合主鍵的某一列刪除后,如果剩下的列構成的主鍵仍然滿足唯一性原則,那么這個復合主鍵是不正確的。這是最小化原則。

如何添加復合主鍵?

可以在創建表時添加復合主鍵,此時主鍵由多個字段聯合組成,語法規則如下:

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)

? 版權聲明
THE END
喜歡就支持一下吧
點贊8 分享