mysql 1054,未知列,但我没有指定列

时间:2013-12-05 08:56:24

标签: mysql sql insert-statement

我有一个基本的客户表。 列是:

FirstName   LastName   Organization   PhoneNumber   City   State   Zip   ID

ID是自动增量值。

我想在表中插入一条新记录,因此我发出以下命令:

INSERT INTO CustomerTable (FirstName, LastName, Organization, PhoneNumber, City, State, Zip) VALUES (John, Doe, None, 5555555555, Nowhere, NY, 12345);

但是,当我发出此声明时,我收到此错误:

ERROR 1054 (42s22): Unknown column 'John' in 'field list'

为什么我收到此错误? “John”是列中的值,而不是实际的列本身。

提前感谢您的帮助!

3 个答案:

答案 0 :(得分:3)

将字符串值放在引号中。外部引号将这些字符串视为列名或变量名。

VALUES (John, Doe, None, 5555555555, Nowhere, NY, 12345)

应该是

VALUES ('John', 'Doe', 'None', 5555555555, 'Nowhere', 'NY', 12345)

答案 1 :(得分:0)

约翰是一个字符串。你需要输入''。

答案 2 :(得分:0)

您必须将'与要插入数据库的所有字符串一起使用。在其他情况下,MySQL会认为您希望从具有给定名称的列中获取值(在本例中为John)。