SQL查询无法正常工作 - 没有理由?

Nik*_*ken -2 php mysql

我有个问题.我创建了一个SQL查询,在数据库中插入一些东西:

INSERT INTO order (kundennummer,empfaenger,adresse,plz,ort,land,email,time,approvalPending) 
VALUES ('232784', 'Niklas Peters', 'Some Stret', 'PostalCode', 'Wien', 'AT', 'email@email.com', '1454593142', '1')
Run Code Online (Sandbox Code Playgroud)

但我总是得到错误:

您的SQL语法有错误; 查看与您的MySQL服务器版本对应的手册,以便在第1行的'order(kundennummer,empfaenger,adresse,plz,ort,land,email,time,approvalPending)附近使用正确的语法

我的代码是PHP

$sql = "INSERT INTO order (kundennummer,empfaenger,adresse,plz,ort,land,email,time,approvalPending) VALUES ('".$kdnr."', '".$emp."', '".$adresse."', '".$plz."', '".$ort."', '".$land."', '".$email."', '".$time."', '1')";
Run Code Online (Sandbox Code Playgroud)

我只是不知道出了什么问题 - 我瞎了吗?

干杯 - 很乐意帮忙!

Luk*_*zda 13

用反引号引用命令:

INSERT INTO `order` (kundennummer,empfaenger,adresse,plz,ort,land,email,time,approvalPending) 
VALUES ('232784', 'Niklas Peters', 'Some Stret', 'PostalCode', 'Wien', 'AT', 'email@email.com', '1454593142', '1');
Run Code Online (Sandbox Code Playgroud)

ORDER (R)保留字.

如果引用保留字,则允许使用保留字作为标识符


Row*_*haw 5

您的表名与保留字匹配,因此需要在SQL查询中引用,例如

INSERT INTO `order` (kundennummer,empfaenger,adresse,plz,ort,land,email,time,approvalPending) VALUES ('232784', 'Niklas Peters', 'Some Stret', 'PostalCode', 'Wien', 'AT', 'email@email.com', '1454593142', '1')
Run Code Online (Sandbox Code Playgroud)

NB.从PHP调用此函数时,您可能需要考虑使用准备好的查询,如PDO等.