我目前正在尝试完成一项非常简单的任务。信息由" post.php"处理它的位置,如果ID(自动增量)不存在则应插入数据库,如果ID存在则更新数据。
运行脚本不会在数据库中写入任何内容。我试图在页面中打印查询,并将SQL复制/粘贴到PhpMyAdmin中。它返回
#1064 - 您的SQL语法出错;检查与MySQL服务器版本对应的手册,以获得正确的语法 near' long,description,mobile,type,reported,embed,live,img_url) 价值观(''' TE'第1行
我的代码是:
$query="INSERT INTO
xxy
(ID
, name
, address
, lat
, long
, description
, mobile
, type
, reported
, embed
, live
, img_url
) VALUES('$id', '$name', '$address', '$lat', '$lon', '$description', '$mobile', '$type', '$reported', '$embed', '$live', '$target_file') ON DUPLICATE KEY UPDATE
name
=VALUES('$name'), address
=VALUES('$address'), lat
=VALUES('$lat'), long
=VALUES('$lon'), description
=VALUES('$description'), mobile
=VALUES('$mobile'), type
=VALUES('$type'), reported
=VALUES('$reported'), embed
=VALUES('$embed'), live
=VALUES('$live'), img_url
=VALUES('$img_url')";
感谢您的帮助!
更新:
我也尝试过反复保留的话。我当前的SQL代码仍然会抛出错误。
1064 - 您的SQL语法出错;检查与您的MySQL服务器版本相对应的手册,以获得正确的语法,使用附近的' $ name'),address = VALUES(' $ address'),lat = VALUES (' $ lat'),lon = VALUES(' $ lon'),de'在第2行
我使用的更新的SQL代码是:
xxy
答案 0 :(得分:3)
删除VALUES
部分
ON DUPLICATE KEY UPDATE
关键字