当前位置:网站首页>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 !
边栏推荐
- C alarm design
- DNS的原理介绍
- Flume common commands and basic operations
- 自然语言处理从小白到精通(四):用机器学习做中文邮件内容分类
- Didi open source Delta: AI developers can easily train natural language models
- Comprehensive upgrade of Taobao short video photosynthetic platform
- Distributed solution - distributed session consistency problem
- 超高效!Swagger-Yapi的秘密
- Reshape the power of multi cloud products with VMware innovation
- Preliminary exploration of basic knowledge of MySQL
猜你喜欢
VoneDAO破解组织发展效能难题
Introduction to the principle of DNS
SAP self-development records user login logs and other information
SAP UI5 DynamicPage 控件介绍
SAP UI5 视图里的 OverflowToolbar 控件
我在滴滴做开源
Add a new cloud disk to Huawei virtual machine
Distributed cache architecture - cache avalanche & penetration & hit rate
Simply take stock reading notes (2/8)
你的下一台电脑何必是电脑,探索不一样的远程操作
随机推荐
RHCSA2
10 minute fitness method reading notes (1/5)
【Nacos云原生】阅读源码第一步,本地启动Nacos
How can non-technical departments participate in Devops?
Transactions on December 23, 2021
Free testing of Taobao tmall API order and flag insertion remark interface
Making and using the cutting tool of TTF font library
GPON technical standard analysis I
JDBC -- use JDBC connection to operate MySQL database
Transactions from December 29, 2021 to January 4, 2022
I met Tencent in the morning and took out 38K, which showed me the basic smallpox
Redis cluster configuration
关于 SAP UI5 floating footer 显示与否的单步调试以及使用 SAP UI5 的收益
HiEngine:可媲美本地的云原生内存数据库引擎
Notes for preparation of information system project manager --- information knowledge
Common commands and basic operations of Apache Phoenix
2021.12.16-2021.12.20 empty four hand transaction records
谈谈我写作生涯的画图技巧
Volatile instruction rearrangement and why instruction rearrangement is prohibited
单独编译内核模块