码迷,mamicode.com
首页 > 数据库 > 详细

mysql replace into 实现存在则更新,不存在则插入

时间:2019-06-19 20:01:08      阅读:268      评论:0      收藏:0      [点我收藏+]

标签:create   最大值   efault   test   ace   mamicode   code   主键   varchar   

 

测试用的mysql数据库:

 

新建测试表:

CREATE TABLE `test` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `text` varchar(255) DEFAULT NULL,
  `uid` varchar(11) DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `uid_unique` (`uid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

 

以上建表三个字段,id是主键自增,bigint类型。uid是字符串,但是加上了唯一约束’uid_unique‘。

 

(1) 添加新的数据

 

技术图片

 

因为库里面没有新的数据,所以肯定是产生一条数据。

 

技术图片

 

 (2) 产生一条新的数据,和 id 以及 uid都不冲突的

 

技术图片

 

这个时候,因为 id是 主键自增的,所以这个时候,会产生一个次于最大值的值,就是1002

 

技术图片

 

mysql replace into 实现存在则更新,不存在则插入

标签:create   最大值   efault   test   ace   mamicode   code   主键   varchar   

原文地址:https://www.cnblogs.com/chenmz1995/p/11053865.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!