1. 程式人生 > >MySQL中出現Multiple primary key defined報錯提示之解決辦法

MySQL中出現Multiple primary key defined報錯提示之解決辦法

com mysq 普通 方式 col 想要 字段 定義 文章

創建主鍵可以有兩種方式:

create table 表名(
字段名 類型,
字段名 類型,
……
primary key(name)
);


或者是

create table 表名(
字段名 類型 primary key,
字段名 類型,
……
);


但是要註意的是,想要創建復合主鍵,就不可以用第二種方式。
下面列舉一個小例子:

技術分享圖片
這裏報錯Multiple primary key defined,表示定義了多個主鍵,正確的寫法是如下:
技術分享圖片
如果項設置復合主鍵,復合主鍵的特點是同時創建、同時刪除,所以需要把主鍵刪除,但是這裏設置了自增,需要先把自增刪除,才可以刪除主鍵,如果不先刪除自增,而直接刪除主鍵的話會報錯(如下)。


技術分享圖片
需要先刪除自增:
技術分享圖片
這裏我們創建復合主鍵的話,把name字段上的普通索引先刪除掉,再給stu_id和name字段同時創建復合主鍵:

技術分享圖片

總結:文章開頭寫的兩種創建主鍵的方式,第二中方式不可以在創建復合主鍵的時候用;復合主鍵要同時創建、同時刪除。

MySQL中出現Multiple primary key defined報錯提示之解決辦法