我正在尝试执行此查询,当它找到$ serial的记录时,它可以更新它。或者,如果序列不存在,它可以写一条新记录。
我得到语法错误,但对我来说似乎很好。非常确定ON DUPLICATE KEY UPDATE是要走的路,但我错过了什么......
$query = "INSERT INTO `".$sys_id."` (serial, status) VALUES ('98745', 'active') ON DUPLICATE KEY UPDATE";
$result = mysql_query($query) or die(mysql_error());
答案 0 :(得分:4)
您需要告诉它要更新的内容(see manual)
这样:
$query = "INSERT INTO `".$sys_id."` (serial, status) VALUES ('98745', 'active')
ON DUPLICATE KEY UPDATE status=VALUES(active)";
(我假设密钥是serial
)