MySQL 插入或更新
MySQL DML 记录
数据操纵语言DML(Data Manipulation Language),用户通过它可以实现对数据库的基本操作。
记录一些遇到的语法,以便随时查阅。
插入或更新 ON DUPLICATE KEY UPDATE
执行插入或更新
语法
<插入语句> ON DUPLICATE KEY UPDATE <更新语句>;
先执行插入语句,如果发生重复错误,执行更新语句
示例
-- 创建一张表,包含 name,age 两个字段,name 是主键
CREATE TABLE PERSON (
NAME VARCHAR(20) PRIMARY KEY,
AGE INT
);
-- 插入测试数据
INSERT INTO PERSON VALUES('user1', 1);
INSERT INTO PERSON VALUES('user2', 2);
-- 插入
INSERT INTO PERSON VALUES('user3', 3) ON DUPLICATE KEY UPDATE AGE = 3;
-- 更新
INSERT INTO PERSON VALUES('user1', 1) ON DUPLICATE KEY UPDATE AGE = 11;