2016-04-18 42 views
0

MySql強制我指定自動遞增列的值。我不明白爲什麼我需要這樣做。在MySql中明確指定自動遞增列的值

我創建了一個表具有以下的列

CREATE TABLE IF NOT EXISTS Aask (task_id INT(11) AUTO_INCREMENT, SUBJECT VARCHAR(45) DEFAULT NULL, start_date DATE DEFAULT NULL, end_date DATE DEFAULT NULL, description VARCHAR(200) DEFAULT NULL, PRIMARY KEY (task_id) );

創建上表後,當我嘗試使用

INSERT INTO flask VALUES ('Subject1','1892-12-27','1994-11-29','detailed description'), ('Subject2','1992-01-17','1694-11-31','HTML view'); 我得到它說

錯誤消息中插入行

查詢:INSERT INTO flask VALUES('Subject1','1892-12-27','1994-11-29','detailed description'),('Subject2','1992-01-17','1694 -11-31','H ...

錯誤代碼:1136 列數不爲1的行

我知道有5列在表中匹配值計數和我已經給只有4個值列表值,但爲什麼我不得不提自動增量列的值?

這聽起來可能對你們大多數人都很基本,但是我只是開始使用MySql,所以在這裏的任何幫助將不勝感激。

回答

1

使用此插入

INSERT INTO flask (SUBJECT, start_date, end_date, description) values 'Subject1','1892-12-27','1994-11-29','detailed description'); 
+0

但爲什麼,下面的查詢不起作用?'INSERT INTO燒瓶 VALUES( 'Subject2', '1997-01-01', '1999-12-31' ,'插入的文本在這裏')'; – Ikshwak

+0

因爲您沒有指定要插入的列,所以mysql會在所有列值爲 –

+0

的情況下運行,請提供您的批准 –