52ky 发表于 2022-5-5 09:07:47

插入 MySQL 表或更新(如果存在)

问题
我想向数据库表中添加一行,但如果有一行具有相同的唯一键,我想更新该行。

例如:

insert into table (id, name, age) values(1, "A", 19)

假设唯一键是 id ,在我的数据库中,有一行 id = 1 。在这种情况下,我想用这些值更新行。通常这会产生错误。
insert IGNORE
it will ignore the error, but it still won’t update.
如果我使用

回答
使用 INSERT ... ON DUPLICATE KEY UPDATE

查询:
INSERT INTO table (id, name, age) VALUES(1, "A", 19) ON DUPLICATE KEY UPDATE   
name="A", age=19



页: [1]
查看完整版本: 插入 MySQL 表或更新(如果存在)