您的SQL语法中有错误

时间:2014-03-14 05:33:00

标签: mysql sql

我收到此错误:

  

#1064 - 您的SQL语法出错;查看与您的MySQL服务器版本对应的手册,以便在'" insert into hall_booking(name,address,event_type,hallNo,arrival_time,arrival_da' at line 1

附近使用正确的语法

运行此查询时:

insert into hall_booking (
    name,address,event_type,hallNo,arrival_time,arrival_date,dep_time,dep_date,identity,emailid,contact,total_members,desc,catering,service,decoration,other
) values (
   '$nm','$add','$typ','$roomno','$arrv','$arrivaldate','$departure','$dDate','$idt','$emailid','$cont','$desc','200','200','200','200')

同样在sql语句中出现问题。我做错了什么?

5 个答案:

答案 0 :(得分:3)

您看起来好像使用受保护的关键字作为列名(您不应该这样做)。

尝试使用`

转义它们
insert into hall_booking (
name,address,event_type,hallNo,arrival_time,
arrival_date,dep_time,dep_date,`identity`,
emailid,contact,total_members,`desc`,catering,service,decoration,other) 
values(
'$nm','$add','$typ','$roomno','$arrv',
'$arrivaldate','$departure','$dDate','$idt',
'$emailid','$cont','$desc','200','200','200','200')

答案 1 :(得分:1)

Try this:
insert into hall_booking (name,address,event_type,hallNo,arrival_time,arrival_date,dep_time,dep_date,identity,emailid,contact,total_members,desc,catering,service,decoration,other)
values ( '".$nm."','".$add."','".$typ."','".$roomno."','".$arrv."','".$arrivaldate."','".$departure."','".$dDate."','".$idt."','".$emailid."','".$cont."','".$desc."','200','200','200','200')"

答案 2 :(得分:0)

您收到此错误是因为您使用保留关键字desc作为列名。要克服此错误,您可以使用以下选项替换查询:

insert into hall_booking (name,address,event_type,hallNo,arrival_time,arrival_date,dep_time,dep_date,`identity`,emailid,contact,total_members,`desc`,catering,service,decoration,other) values ('$nm','$add','$typ','$roomno','$arrv','$arrivaldate','$departure','$dDate','$idt','$emailid','$cont','$desc','200','200','200','200')"

此外,您可以参考此文章以获得更多说明:

How do I escape reserved words used as column names? MySQL/Create Table

答案 3 :(得分:0)

我认为你没有提到最后一个值

   "INSERT INTO `hall_booking`(`name`,`address  ,`event_type`,`hallNo`,`arrival_time`,`arrival_date`,`dep_time`,`dep_date`,`IDENTITY`,`emailid`,`contact`,`total_members`,`DESC`,`catering`,`service`,`decoration`,`other`)
    VALUES('".$nm."',
           '".$add."',
           '".$typ."',
           '".$roomno."',
           '".$arrv."',
           '".$arrivaldate."',
           '".$departure."',
           '".$dDate."',
           '".$idt."',
           '".$emailid."',
           '".$cont."',
           '".$desc."',
           '200',
           '200',
           '200',
           '200',
           'Last Value')"

答案 4 :(得分:0)

你有一个字段是保留字... desc。

尝试用'''字符括起来,所以它应该是'desc`。

mysql> 
insert into hall_booking
(name,address,event_type,hallNo,arrival_time,
arrival_date,dep_time,dep_date,identity,emailid,contact,total_members,
`desc`,catering,service,decoration,other) values
('$nm','$add','$typ','$roomno','$arrv','$arrivaldate','$departure','$dDate',
 '$idt','$emailid','$cont','$desc','200','200','200','200')