[英]Why does my (MySQL) INSERT operation fail?
我有一個具有以下結構的表:
--------------
SHOW COLUMNS FROM versions
--------------
+-----------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-----------------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| project_id | int(11) | NO | MUL | 0 | |
| name | varchar(255) | NO | | | |
| description | varchar(255) | YES | | | |
| effective_date | date | YES | | NULL | |
| created_on | datetime | YES | | NULL | |
| updated_on | datetime | YES | | NULL | |
| wiki_page_title | varchar(255) | YES | | NULL | |
| status | varchar(255) | YES | | open | |
| sharing | varchar(255) | NO | MUL | none | |
+-----------------+--------------+------+-----+---------+----------------+
為什么以下查詢失敗?
INSERT INTO versions (10, 'Unplanned', ' ', null, null, null, null, 'open', 'none');
這是我得到的錯誤信息:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '10, 'Unplanned', ' ', null, null, null, null, 'open', 'none')' at line 1
如果您未指定列列表,則需要添加關鍵字VALUES
:
INSERT INTO versions VALUES (10, 'Unplanned', ' ', null, null, null, null, 'open', 'none');
無需插入默認值,例如none,null等。
只需使用以下查詢插入數據:插入版本(project_id,name,sharing)values(10,'unplanned','none');
我要插入的共享字段,因為根據您的表設計,它不能為null。
您也可以使用這種格式
INSERT INTO versions(id,project_id,name,description,effective_date,created_on,updated_on,wiki_page_title,status,sharing) VALUES (10, 'Unplanned', ' ', null, null, null, null, 'open', 'none');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.