当前位置:网站首页>MySQL giant pit: update updates should be judged with caution by affecting the number of rows!!!
MySQL giant pit: update updates should be judged with caution by affecting the number of rows!!!
2022-07-05 12:54:00 【Java technology stack】
source :cnblogs.com/yjmyzz/p/13562182.html
In the business system , Use update Statement updating data is a normal scenario , We often pass through update Number of rows updated , To make some business judgments , Similar to the following pseudo code :(mybatis + mysql scene )
if (xxxMapper.updateByPrimaryKeySelective(entity)>0){
// The update is successful , Do other business processing
}But there's a hole ,mysql in update Number of rows affected >0 It's conditional , If there is a table :

There's only one record in it (ID=1), We use it update Update one ID=1 This record of

This line was successfully updated , The number of affected lines is 1, Taken for granted , Then put this update Statement again :

Now , The number of affected rows returned is 0, in other words , When the record to be updated is the same as the old value of the original record ,mysql In fact, there will be no update ..
In other words , If the data transmitted from the upstream , Equal to the old value of the database itself , When there is no change ,update The number of lines affected by the statement is 0. This is different from another scenario :" Update a record that doesn't exist , Affect the number of rows and return 0" Indistinguishable .

Conclusion : Do not use update The number of lines affected by the statement makes important business judgments !
Recent hot article recommends :
1.1,000+ Avenue Java Arrangement of interview questions and answers (2022 The latest version )
2. Explode !Java Xie Cheng is coming ...
3.Spring Boot 2.x course , It's too complete !
4. Don't write about the explosion on the screen , Try decorator mode , This is the elegant way !!
5.《Java Development Manual ( Song Mountain version )》 The latest release , Download it quickly !
I think it's good , Don't forget to like it + Forward !
边栏推荐
- jxl笔记
- 滴滴开源DELTA:AI开发者可轻松训练自然语言模型
- 激动人心!2022开放原子全球开源峰会报名火热开启!
- Distributed solution - distributed lock solution - redis based distributed lock implementation
- SAP UI5 ObjectPageLayout 控件使用方法分享
- 2021-12-22 transaction record
- Kotlin流程控制、循环
- HiEngine:可媲美本地的云原生内存数据库引擎
- 10 minute fitness method reading notes (3/5)
- 谈谈我写作生涯的画图技巧
猜你喜欢

Taobao, pinduoduo, jd.com, Doudian order & Flag insertion remarks API solution

Vonedao solves the problem of organizational development effectiveness

Database connection pool & jdbctemplate

Distributed cache architecture - cache avalanche & penetration & hit rate

Super efficient! The secret of swagger Yapi

How can non-technical departments participate in Devops?

I met Tencent in the morning and took out 38K, which showed me the basic smallpox

Kotlin variable

【云原生】Nacos-TaskManager 任务管理的使用

JDBC -- extract JDBC tool classes
随机推荐
155. 最小栈
HiEngine:可媲美本地的云原生内存数据库引擎
Didi open source Delta: AI developers can easily train natural language models
jxl笔记
Taobao, pinduoduo, jd.com, Doudian order & Flag insertion remarks API solution
UNIX socket advanced learning diary - advanced i/o functions
关于 SAP UI5 getSAPLogonLanguage is not a function 的错误消息以及 API 版本的讨论
Insmod prompt invalid module format
Simply take stock reading notes (2/8)
How can non-technical departments participate in Devops?
Super efficient! The secret of swagger Yapi
SAP UI5 DynamicPage 控件介紹
滴滴开源DELTA:AI开发者可轻松训练自然语言模型
GPON technical standard analysis I
A deep long article on the simplification and acceleration of join operation
What is the difference between Bi software in the domestic market
SAP UI5 FlexibleColumnLayout 控件介绍
开发者,云原生数据库是未来吗?
实战模拟│JWT 登录认证
Free testing of Taobao tmall API order and flag insertion remark interface