SQL语法错误:任何人都可以在此处看到问题吗?

时间:2015-07-05 15:12:02

标签: mysql

我收到此SQL语句的语法错误。我有点难过,因为一切似乎都对我好......

INSERT INTO vehicle (vin,plate,plateprov,condition,year,makecode,make,model,bstyle,mileage,colour,twotone,paintstage,impact1) 
VALUES ('3VWSF31K36M617923','ARDM093','ON','GO','06','47','Volkswagen','Jetta','4D Sed','132123','BURGUNDY','0','0','07')

这是我的表结构:

id  int(11) 
vin varchar(17)
plate   varchar(10)
plateprov   varchar(2)
condition   varchar(2)
year    int(11)
makecode    varchar(12)
make    varchar(20)
model   varchar(50)
bstyle  varchar(20)
engine  varchar(20)
mileage int(7)
colour  varchar(20)
twotone int(11)
paintstage  int(11)
paintcode1  varchar(15)
paintcode2  varchar(15)
paintcode3  varchar(15)
impact1 varchar(2)
impact2 varchar(30)

错误消息我得到:

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 'condition,year,makecode,make,model,bstyle,mileage,colour,twotone,paintstage,impa' at line 1

非常感谢任何帮助.. 凯尔

2 个答案:

答案 0 :(得分:1)

CONDITION是保留字。您应该找到标识符的另一个名称,或将其包含在反引号中。

保留字列表随时可用(见here)。

CONDITION的使用相当晦涩,所以它不是一个明显的保留词。 Here是它的文档。但是,这种类型的错误几乎总是意味着保留字的问题。

答案 1 :(得分:0)

尝试使用列名称的后退标记。

INSERT INTO vehicle (`vin`,`plate`,`plateprov`,`condition`,`year`,`makecode`,`make`,`model`,`bstyle`,`mileage`,`colour`,`twotone`,`paintstage`,`impact1`) 
VALUES ('3VWSF31K36M617923','ARDM093','ON','GO','06','47','Volkswagen','Jetta','4D Sed','132123','BURGUNDY','0','0','07')