Incorrect table definition; there can be only one auto column and it must be defined as a key

今天在複習mysql的基本語句時,創建一個表,原來建表語句如下:

CREATE TABLE test4
(
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
NAME VARCHAR(20) NOT NULL
);


結果返回:
錯誤代碼: 1075
Incorrect table definition; there can be only one auto column and it must be defined as a key(只能有一個自動列,必須將其定義爲鍵)

因此,將id設置爲主鍵,修改後的語句如下:

CREATE TABLE test5
(
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
PRIMARY KEY (id),
NAME VARCHAR(20) NOT NULL
);

運行成功。

結論:
在一個表中只能有一個自增字段,自增字段必須是主鍵,但主鍵不一定是自增字段。如:

CREATE TABLE test6
(
id INT UNSIGNED NOT NULL,
PRIMARY KEY (id),
NAME VARCHAR(20) NOT NULL
);

運行成功。
共同學習,與君共勉!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章