2015-07-05 52 views
1

我收到此SQL语句的语法错误。我有点难倒一切似乎是确定,我...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 

任何帮助非常感谢。 Kyle

+0

围绕那些可能是保留关键字的字段名反引号。条件,一年。还修复插入的数据,以满足表类型(年份为int(11),因此不能插入'06') – amdixon

回答

1

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

保留字列表随时可用(请参阅here)。

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

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') 
相关问题