插入两个值的重复键更新?

insert on duplicate key update for two values?

我的 save_list table 包含三列:

id, user_id, item_id

查询

INSERT INTO save_list (user_id, item_id) VALUES (?,?)

如果 user_iditem_id 都存在,我如何使用 INSERT ON DUPLICATE KEY UPDATE 更新行?

工作代码

INSERT INTO save_list (user_id, item_id) VALUES (?,?) ON DUPLICATE KEY UPDATE user_id = ?, item_id = ?

在它们之间创建一个唯一的复合键

ALTER TABLE tblName ADD UNIQUE unique_index777 (user_id,item_id);

您需要将这 2 个字段定义为组合键才能进行更新。

INSERT INTO foo_table(user_id, item_id, description) ft values (a,b,desc)
ON DUPLICATE KEY UPDATE ft.description=desc

应该可以解决问题