2017-02-21 35 views
0

這是我的表格。 ID預期的那樣主鍵和自動填充錯誤1364(HY000):字段'id'沒有默認值

mysql> DESCRIBE test_table 
-> ; 
+-------+--------------+------+-----+---------+-------+ 
| Field | Type   | Null | Key | Default | Extra | 
+-------+--------------+------+-----+---------+-------+ 
| id | int(8)  | NO | PRI | NULL |  | 
| name | varchar(256) | YES |  | NULL |  | 
| phone | varchar(20) | YES |  | NULL |  | 
+-------+--------------+------+-----+---------+-------+ 
3 rows in set (0.00 sec) 

然而,當我插入數據這樣

mysql> INSERT INTO test_table (name, phone) VALUES ('Nikita', '26908050'); 

它返回錯誤,該ID不具有默認值。

ERROR 1364 (HY000): Field 'id' doesn't have a default value 

我怎麼能告訴MySQL該ID必須以0開始,increese每個東西被添加到TEST_TABLE時間?

+0

而不是使用'的DESCRIBE'你應該張貼SHOW的'結果CREATE TABLE test_table'。 –

回答

0

該字段id要求AUTO_INCREMENT屬性。否則,它是未定義的,這就是錯誤信息所說的。

See here for full documentation and example.

如果要修改一個已經存在的表,請使用以下命令:

ALTER TABLE test_table CHANGE id id INT(8) AUTO_INCREMENT PRIMARY KEY; 
相關問題