程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> mysql修改表實現自動整長時需要注意的問題

mysql修改表實現自動整長時需要注意的問題

編輯:MySQL綜合教程

mysql修改表有多種情況,如果要為一個表添加一個auto_increment 實現表自動整場,有一些問題是需要注意的,不然就會出現一些錯誤。

比如創建這樣一個表:

CREATE TABLE people ( peopleid SMALLINT NOT NULL, name CHAR(50) NOT NULL );

要實現mysql修改表,為peopleid添加一個auto_increment 讓它自動整長,開始mysql總是報1075錯誤;於是查了一下關於mysql 1075的錯誤,

錯誤:1075 SQLSTATE: 42000 (ER_WRONG_AUTO_KEY)

消息:不正確的表定義,只能有1個auto列,而且必須將其定義為主鍵。

原來需要先添加一個主鍵

alter table people add primary key (peopleid);

alter table people change peopleid peopleid smallint auto_increment;

這樣mysql修改表就成功了。

那麼,如果不添加主鍵, 還可不可以呢?

如果沒有主鍵的話,這樣也可以:

alter table people change peopleid peopleid smallint auto_increment unique;

這樣也是可以的,這裡應該有一個注意,剛開始的時候如果每次都沒有修改都沒有表明字段類型,就會一直報錯,切忌要聲明字段的類型。

以上就是mysql修改表實現自動整長時需要注意的問題。

mysql修改字段的語句寫法

詳解MySQL數據庫資源不足的異常錯誤

MySQL中多表刪除方法

詳解MySQL如何鏈接遠程SQL

MySQL集群簡介與配置詳解

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved