
在 MySQL 中,你可以使用 INSERT ... ON DUPLICATE KEY UPDATE 语句来实现“当记录不存在时插入,当记录存在时更新”的功能。这个语句的工作原理是:如果插入的记录在表中已经存在(根据唯一索引或主键判断),则执行更新操作;否则,执行插入操作。
假设你有一个表 users,其结构如下:
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100),
email VARCHAR(100) UNIQUE
);你可以使用以下语句来实现你的需求:
INSERT INTO users (name, email)
VALUES ('John Doe', 'john@example.com')
ON DUPLICATE KEY UPDATE
name = VALUES(name),
email = VALUES(email);在这个例子中:
email 为 'john@example.com' 的记录不存在,则插入一条新记录。email 为 'john@example.com' 的记录已经存在,则更新该记录的 name 和 email 字段。原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。