mysql插入重复时insert自动变为update更新操作
时间:2024年03月30日
/来源:网络
/编辑:佚名
在高并发项目中,使用多线程录入数据有可能造成重复录入,出现主键冲突的异常,需要使用关键字进行判断数据库是否已存在此主键,如果存在会将插入操作变为更新操作。
利用ON DUPLICATE KEY UPDATE关键字可以实现
//sql写法
insert into player_count(player_id,count,name) value(1,1,'张三')
on duplicate key update
count= 1,name='张三';
<!--xml写法-->
<insert id="insert" parameterType="com.tsp.model.PlayerCount">
insert into player_count(player_id,count_number,name) value (#{playerId,jdbcType=INTEGER}, #{countNumber,jdbcType=INTEGER}, #{name,jdbcType=VARCHAR})
on duplicate key update
count_number=#{countNumber,jdbcType=INTEGER},
name=#{name,jdbcType=VARCHAR}
</insert>
利用ON DUPLICATE KEY UPDATE关键字可以实现
//sql写法
insert into player_count(player_id,count,name) value(1,1,'张三')
on duplicate key update
count= 1,name='张三';
<!--xml写法-->
<insert id="insert" parameterType="com.tsp.model.PlayerCount">
insert into player_count(player_id,count_number,name) value (#{playerId,jdbcType=INTEGER}, #{countNumber,jdbcType=INTEGER}, #{name,jdbcType=VARCHAR})
on duplicate key update
count_number=#{countNumber,jdbcType=INTEGER},
name=#{name,jdbcType=VARCHAR}
</insert>
新闻资讯 更多
- 【mysql教程】mysql出现提示Table is marked as crashed and should be repaired 解决办法04-02
- 【mysql教程】 mysql实现不存在就Insert into存在则update举例03-30
- 【mysql教程】INSERT 表名(字段) VALUES(字段值) ON DUPLICATE KEY UPDATE 条件语句实例03-30
- 【mysql教程】sql中ON DUPLICATE KEY UPDATE有什么用?03-30
- 【mysql教程】mysql实现不存在就 Insert into 存在则 update03-30
- 【mysql教程】MySQL 当记录不存在时insert,当记录存在时update03-30
- 【mysql教程】将INSERT INTO转换为UPDATE03-30
- 【mysql教程】sql技术 --insert 变 update03-30
猜你需要