MySQL在未指定的列上报告未知列

时间:2013-10-15 11:48:21

标签: mysql insert

我正在尝试将值插入到表中,但是我遇到了一个我无法克服的错误 -

INSERT INTO dd_poll_options (option_text, option_order, poll_id) VALUES (a, 0, 6),(b, 1, 6),(c, 2, 6),(d, 3, 6),(e, 4, 6),(f, 5, 6);

如下生成错误。从代码示例中可以看出,'a'是一个值,而不是列名 -

  

'字段列表'中的未知列'a'

我已经检查了MySQL 'INSERT' doc's似乎暗示代码是健全的,并举例说明 -

INSERT INTO tbl_name (a,b,c) VALUES(1,2,3),(4,5,6),(7,8,9);

我试过在backtricks(`)中包装列名,但是同样的错误是生成的。

有人可以帮我找一下这个错误发生的原因,以及如何修复它?感谢。

1 个答案:

答案 0 :(得分:2)

您需要围绕a

等字符串的引号
INSERT INTO dd_poll_options (option_text, option_order, poll_id) 
VALUES ('a', 0, 6),
       ('b', 1, 6),
       ('c', 2, 6),
       ('d', 3, 6),
       ('e', 4, 6),
       ('f', 5, 6);

否则,数据库引擎会查找具有该名称的列。