MySql数据库-10数据库事物

事物: 一件完整的事


事物的理解:
       事务处理在各种管理系统中都有着广泛的应用,
               比如人员管理系统,很多同步数据库操作大都需要用到事务处理。比如说,在人员管理系统中,你删除一个人员,你即需要删除人员的基本资料,也要删除和该人员相关的信息,如信箱,文章等等,
               再比如在银行转账的时候,用户a转出500,用户b收到500, 这两个事件都要成功才可以,如有一方失败则整个转账行为就失败。
这样,这些数据库操作语句就构成一个事务!


       如果没有事务处理,在你删除的过程中,假设出错了,只执行了第一句,那么其后果是难以想象的!
       但用事务处理。如果删除出错,你只要rollback就可以取消删除操作(其实是只要你没有commit你就没有确实的执行该删除操作)。


事物的四个特性:
  1,原子性:
                   指整个数据库事务是不可分隔的工作单元。原子性确保在事务中的所有操作要么都发生,要么都不发生。
  2,一致性:
                   一旦一个事务结束了(不管成功与否),系统所处的状态和它的业务规则是一致的。即数据应当不会被破坏。
  3,隔离性:
                  指多个事务同时操作同一数据时,每个事务都有各自的完整数据空间。
  4,永久性:
                  一旦事务完成,事务的结果应该持久化


数据库管理系统采用重执行日志来保证原子性,一致性,持久性。
数据库管理系统采用数据库锁机制来实现隔离性。



mysql 中默认事物是自动提交的。


  set autocommit=1(true)(默认)          自动提交事物
  set  autocommit =0(false)                    手动提交事物
  commit                                                     提交事物
  rollback                                                     回滚事物
  savepoint                                                  设置混滚点


在我们最终commit之前,是可以rollback的,但是一旦commit了,就永久生效了,无法rollback


帮助理解四特性:
原子性:即要么泡妞成功,要么泡妞不成功,绝对不能出现暧昧不清的情况
一致性:即如果对方对你好,你就不能耍脾气,也要对对方好,状态要保持一致
隔离性:谈恋爱期间钱归钱,爱归爱,两者不能混淆,爱不应受到穷富的干扰
持久性:恋爱成功后,婚姻应该是一辈子的,是永久性的,海枯石烂至死不渝

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值