簡體   English   中英

mysql 錯誤:#1075

[英]Mysql Error: #1075

SQL查詢:

ALTER TABLE  `blog` CHANGE  `id`  `id` BIGINT NOT NULL AUTO_INCREMENT

MySQL 說:

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

我正在嘗試創建一個博客,並且我完成了代碼。 現在,我需要讓id自動增加,但我得到了這個錯誤。 為什么我會得到這個?

MySQL 正在返回該錯誤(很可能),因為id列上沒有定義唯一索引。 (MySQL 要求有一個唯一索引。另一種可能性,您可能已經想到,表中只能有一個定義為 AUTO_INCREMENT 的列。)

要使該列成為 AUTO_INCREMENT,您可以在id列上添加 UNIQUE 約束或 PRIMARY KEY 約束。 例如:

ALTER TABLE `blog` ADD CONSTRAINT `blog_ux` UNIQUE (`id`) ;

(請注意,如果 id 列存在任何重復值,此語句將返回錯誤。)

或者,您可以將 id 列設為表的 PRIMARY KEY(如果該表尚未定義 PRIMARY KEY 約束)。

ALTER TABLE `blog` ADD PRIMARY KEY (`id`) ;

(請注意,如果 id 列存在任何重復值,或者如果該列中存儲了任何 NULL 值,或者表上已經定義了 PRIMARY KEY 約束,則此語句將返回錯誤。)

MySQL 要求您將自增列作為表的主鍵。 最后添加primary key約束

ALTER TABLE  `blog` MODIFY COLUMN `id` BIGINT NOT NULL AUTO_INCREMENT primary key

要解決#1075 error消息,您需要將至少一列標記為primary_keyunique_key 你忘了做的事。

通過在ID列上定義Primary _key ,我的錯誤得到了解決。

謝謝

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM