第一句子大全,网罗天下好句子,好文章尽在本站!

揭秘Mysql事物部分update语句成功 部分失败

时间:2023-12-16

下面就详细解释其产生的原因首先说一个mysql的事务提交的参数这个参数很好理解,如果autocommit设置为1,就是开启mysql数据库自动提交的特性,设置为0,

友情提示:本文共有 482 个字,阅读大概需要 1 分钟。

使用mysql数据库的小伙伴们,对mysql怎么控制事物,语句的提交一定要了解清楚,如果应用代码对事物使用不当,就会造成Mysql事物部分update语句成功,部分失败。下面就详细解释其产生的原因

首先说一个mysql的事务提交的参数

这个参数很好理解,如果autocommit设置为1,就是开启mysql数据库自动提交的特性,设置为0,则不开启自动提交。这里需要提醒大家的是,设置为1之后,数据库自动提交的意思,每当应用请求一个update,或者insert,或者delete语句时,Mysql就会提交这个语句。请注意,如果应用逻辑要实现的是一个事物包含3条update语句,大家都会认为,3个Update语句如果有一个执行失败,则全部回滚,但是请注意,应用如果没有在代码中显示的去启用事物,mysql数据库执行情况是这样的

数据库成功执行了1和2两个update,第三个sql语句因为锁等或者连接断开,并没有执行,最后的结果是什么呢,就是语句1和语句2被数据库正常提交,并落盘了。我换一个写法,大家就明白了

因为事物没有控制,就导致部分update语句成功,部分失败。

本文如果对你有帮助,请点赞收藏《揭秘Mysql事物部分update语句成功 部分失败》,同时在此感谢原作者。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。
显示评论内容(2)
  1. 无敌の银2024-01-05 17:26无敌の银[广西网友]203.25.203.97
    如果有办法解决这个问题,一定要分享出来哦!
    顶5踩0
  2. 莫忘莫失2023-12-26 09:47莫忘莫失[内蒙古网友]124.156.118.74
    哇,这个主题好有趣!我之前也遇到过类似的情况,期待看到更多的解析和讨论。
    顶0踩0
相关阅读
MySQL中delete和update语句的用法

MySQL中delete和update语句的用法

...格中:连接数据库-选择数据库-查看表:先来看一下更新语句,更新语句的时候需要注意,一定要加上where条件,不然整张表的数据,将被全部更新,比如我们要修改一下id=2的姓名,性别,生日,(开发中,一般因为id号是唯一...

2023-06-17 #经典句子

mysql修改语句UPDATE的使用

mysql修改语句UPDATE的使用

...。今天介绍一下update的使用,这个关键词就是修改数据库语句。我们看看在哪些环境会用到修改语句,比如在编辑输入资料的时候发现资料录错了,或者某个信息要修改,这个时候就需要用到update了。我们实现的是最后原理,不...

2018-09-14 #经典句子

oracle update语句

oracle update语句

...ft自然转向自己的win操作系统,作为windows NT软件方案的一部分。而Sybase则专注于Linux/Unix方向的数据库开发。3、关于“大型数据库”,并没有严格的界定,有说以数据量为准,有说以恢复时间为准。如果综合数据库应用场景来说...

2023-04-29 #经典句子

update语句set中也可以使用and关键字

update语句set中也可以使用and关键字

...1", name = "张xx" where row_id = 3;但你是否有注意到,下面这条语句也是可以更新数据的update student set no = "1" and name = "张xx" where row_id = 3;可能有朋友已经踩过这个坑,在mysql中,才会遇到这个问题,因为sqlserver和oracle这么写是会提示语...

2023-10-02 #经典句子

一条 update 语句引起的事故 这回让开发长长记性!

一条 update 语句引起的事故 这回让开发长长记性!

...程由于开发需要在生产环节中修复数据,需要执行120条SQL语句,需要将数据进行更新于是开发连上了生产数据库,首先执行了第一条SQL:update tablename set source_name = "bj1062-北京市朝阳区常营北辰福第"where source_name = "-北京市朝阳区...

2023-01-26 #经典句子

不会mysql死锁排查 请看此文

不会mysql死锁排查 请看此文

...看到,mysql检测到Deadlock,并回滚了会话2的sql,让会话的事物能继续进行。那mysql怎么选择回滚那个会话呢,主要从回滚代价上去考虑的,谁的锁持有的少,则回滚对应的会话事物。下面看看数据库的死锁详细信息看看在数据库...

2016-06-19 #经典句子

PHP操作MySQL-预处理语句「程序员培养之路第五十天」

PHP操作MySQL-预处理语句「程序员培养之路第五十天」

...应的参数。简单的说,就是将sql语句强制一分为二:第一部分为前面相同的命令和结构部分,第二部分为后面可变的数据部分。预处理语句,可以减轻数据库服务器压力。定义预处理语句使用prepare()方法执行sql预处理语句,得到...

2023-12-28 #经典句子

MySQL中SQL查询语句的执行顺序 你知道吗?

MySQL中SQL查询语句的执行顺序 你知道吗?

... (having_condition)、ORDER BY (order_by_field)、LIMIT (limit_number)等10部分组成,那它的执行顺序是怎么样的呢,看下图:这里有几个需要注意的地方:1、SQL语句是从FROM开始执行的,而不是SELECT。MySQL在执行SQL查询语句的时,首先是将数据...

2023-02-03 #经典句子