首页 > 数据库技术 > 详细

SQL事物的理解

时间:2021-03-03 14:35:49      阅读:21      评论:0      收藏:0      [点我收藏+]

事物的特征:

  1. 原子性(Atomicity),原子性意味着数据库中的事务执行是作为原子。即不可再分,整个语句要么执行,要么不执行。
  2. 一致性(Consistency),一致性,即在事务开始之前和事务结束以后,数据库的完整性约束没有被破坏。
  3. 隔离(Isolation),事务的执行互不干扰,一个事务不可能看到其他事务运行时,中间某一时刻的数据。

比如转账,A账户减少金额  B账户增加金额,这是一个完整的事物,要么执行完成,要么直接不执行。         

容易出现的问题是:   脏读(一个事物读取了另一个事物未提交的数据)

                                   不可重复读(一个事物范围内两个相同的查询返回不同的数据)

                                   幻读(事务不是独立执行时发生的一种现象,例如第一个事务对一个表中的数据进行了修改,这种修改涉及到表中的全部数据行。同时,第二个事务也修改这个表中的数据,这种修改是向表中插入一行新数据。那么,以后就会发生操作第一个事务的用户发现表中还有 没有修改的数据行)

         4.持久性(durability),意味着在事务完成以后,该事务所对数据库所作的更改便持久的保存在数据库之中,并不会被回滚。  

基本语法:

  开启事物,BEGIN TRANSACTION

         数据操作语句(select / insert  / update......)

       commit/rollback   提交/回滚

由连接引用的数据在该点是逻辑和物理上都一致的。如果遇上错误,在 BEGIN TRANSACTION 之后的所有数据改动都能进行回滚,以将数据返回到已知的一致状态 。每个事务继续执行直到它无误地完成并且用 COMMIT对数据库作永久的改动,或者遇上错误并且用 ROLLBACK语句回滚到初始状态。

SQL事物的理解

原文:https://www.cnblogs.com/Aiora/p/14472864.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!