更新记录(如果存在),否则写入新记录?

| 我正在尝试执行此查询,当它找到$ serial的记录时,它可以更新它。或者,如果序列号不存在,则可以写入新记录。 我得到语法错误,但对我来说似乎很好。相当糟糕,肯定要进行“重复密钥更新”,但是我丢失了某些东西...
$query = \"INSERT INTO `\".$sys_id.\"` (serial, status) VALUES (\'98745\', \'active\') ON DUPLICATE KEY UPDATE\";
$result = mysql_query($query) or die(mysql_error());
    
已邀请:
您需要告诉它要更新的内容(请参见手册) 所以:
$query = \"INSERT INTO `\".$sys_id.\"` (serial, status) VALUES (\'98745\', \'active\') 
           ON DUPLICATE KEY UPDATE status=VALUES(active)\";
(我假设密钥是
serial
)     

要回复问题请先登录注册