事务

作者: 你好旧时光912 | 来源:发表于2019-03-30 18:58 被阅读0次

    ①定义:

    一个或者一组SQL语句(每个SQL语句相互依赖)组成一个执行单元,执行单元要么全部执行,要么全部不执行。

    如果单元中某条SQL语句一旦执行失败或产生错误,整个单元将会回滚。所有受到影响的数据将返回到事物开始以前的状态;

    如果单元中的所有SQL语句均执行成功,则事物被顺利执行。

    ②事务的四大特性:ACID

    原子性:

    事务包含的所有操作要么全部成功,要么全部失败回滚。

    一致性:

    事务必须使数据库从一个一致性状态变换到另一个一致性状态

    以转账事务来说,假设用户A和用户B两者的钱加起来一共是5000,那么不管A和B之间如何转账,转几次账,事务结束后两个用户的钱相加起来应该还得是5000,这就是事务的一致性。

    隔离性:

    当多个用户并发访问数据库时,比如操作同一张表时,数据库为每一个用户开启的事务,不能被其他事务的操作所干扰,多个并发事务之间要相互隔离,不受其他事务的干扰。

    持久性:

    一个事务一旦被提交了,那么对数据库中的数据的改变就是永久性的

    ③创建事务

    隐式事务:insert、update、delete(自动提交)

    显式事务:

    步骤一

    set autocommit = 0;(自动提交功能关闭,只针对当前事务有效)

    start transaction(可省略)

    步骤二

    事务中的SQL语句(select、insert、update、delete增删改查)

    步骤三(结束事务)

    commit    提交事务

    rollback   回滚事务(保存到内存,没有保存到磁盘文件)

    相关文章

      网友评论

        本文标题:事务

        本文链接:https://www.haomeiwen.com/subject/kumsbqtx.html