MySQL-插入更新 ON DUPLICATE KEY UPDATE

向数据库中插入一条记录,若该数据的主键值(UNIQUE KEY)已经在表中存在,则执行后面的 UPDATE 操作。否则执行前面的 INSERT 操作。

测试表结构

CREATE TABLE `flume_meta` (
  `source_tab` varchar(255) COLLATE utf8_bin DEFAULT NULL UNIQUE,
  `current_index` bigint(255) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

执行更新插入

INSERT INTO `flume_meta` VALUES('user',1)
ON DUPLICATE KEY
UPDATE source_tab='user',current_index=5;

第一次执行后

再次执行

 变成了更新操作

猜你喜欢

转载自www.cnblogs.com/jhxxb/p/11587834.html