Php,关于重复密钥更新。错误?
我已经看过文件,看不出我的陈述有什么问题 错误击中了“关键”Php,关于重复密钥更新。错误?,php,mysql,Php,Mysql,我已经看过文件,看不出我的陈述有什么问题 错误击中了“关键” INSERT INTO employeedetails (userid,ref,name,department,commenced) VALUES ('$userid','$ref','$name','$department','$commenced') ON DUPLICATE KEY UPDATE ref='" . $ref . "', name = '" . $name . "', department = '" .
INSERT INTO employeedetails (userid,ref,name,department,commenced) VALUES
('$userid','$ref','$name','$department','$commenced')
ON DUPLICATE KEY UPDATE
ref='" . $ref . "',
name = '" . $name . "',
department = '" . $department . "',
commenced = '" . $commenced . "'
WHERE userid=" . $userid;
多谢各位
编辑:
主键是“userid”
INSERT INTO employeedetails (userid,ref,name,department,commenced)
VALUES ('1','11','','','2017-03-08 00:00:00') ON DUPLICATE KEY UPDATE ref='11',
name = '', department = '', commenced = '2017-03-08 00:00:00' WHERE userid=1
错误是:无法识别的关键字。位置529的near键删除WHERE仍会带来错误,但运行正常
INSERT INTO employeedetails (userid,ref,name,department,commenced)
VALUES ('1','11','','','2017-03-08 00:00:00') ON DUPLICATE KEY UPDATE ref='11',
name = '', department = '', commenced = '2017-03-08 00:00:00'
错误是什么?你在使用什么数据库?一旦你有了所有的参数,你能告诉我们完整的SQL是什么样子吗?你不能在INSERT语句中使用WHERE,这是没有意义的。你很可能是sql注入自己。嗨,我已经更新了它,我使用的是更新中的WHERE而不是INSERTRight,你可能需要参考手册…它是一个内部系统,所以sql注入不是我的问题