管理数据库事务

紫色代表一级目录
粉红代表二级目录
蓝色代表三级目录
红色代表关键字
橙色代表说明

管理数据库事务
  事务:事务是对数据库执行的一个操作单位。
     它是以逻辑顺序完成的工作单元或工作序列。
     事务是由数据操作语言(DML)完成的。
     事务是对数据库所做的一个或多个修改。
     一个事务可以是一个或多个DML语句。
     在管理事务时,指定的事务(DML语句组)都必须作为一个整体来完成。
  控制事务
    事务控制是对关系数据库管理系统(RDBMS)里可能发生的各种事务的管理能力。
    当一个事务被执行并且成功完成时,虽然从输出结果来看目标表已被修改了,但实际上目标表并不是立即被修改。
    当事务成功完成时,利用事务控制命令最终认可这个事务,可以把事务所做的修改保存到数据库,也可以撤销事务所做的修改。
    COMMIT、ROLLBACK、SAVEPOINT(只能与INSERT、UPDATE、DELETE连用)
    在这里插入图片描述
    图中展示了修改操作如何应用到关系型数据库。
    COMMIT命令
      COMMIT命令用于把事务所做的修改保存到数据库,它把上一个COMMIT或ROLLBACK命令之后的全部事务都保存到数据库。
      语法:
      在这里插入图片描述
    ROLLBACK命令
      ROLLBACK命令用于撤销还没有被保存到数据库的命令,它只能用于撤销上一个COMMIT或ROLLBACK命令之后的事务。
      语法:
      在这里插入图片描述
    SAVEPOINT命令(保存点的名称必须唯一)
      保存点是事务过程中的一个逻辑点,我们可以把事务回退到这个点,而不必回退整个事务。
      语法:
      在这里插入图片描述
      在SQL Server中,语法为:SAVE TRANSACTION savepoint_name。
    ROLLBACK TO SAVEPOINT命令
       语法:
       在这里插入图片描述
    RELEASE SAVEPOINT命令
      用于删除创建的保存点。
      语法:
      在这里插入图片描述
      SQL Server不支持RELEASE SAVEPOINT命令;在事务完成以后,所有的保存点会被自动删除。
    SET TRANSACTION命令
      这个命令用于初始化数据库事务,可以指定事务的特性。
      例:
      在这里插入图片描述
      READ WRITE用于对数据库进行查询和操作数据的事务。
      READ ONLY用于只进行查询数据的事务。

  watch out:如果一直没有出现COMMIT或ROLLBACK命令,临时存储区域里的回退信息就会不断增长,直到没有剩余空间,导致数据库停止全部进程,直到空间被释放。

猜你喜欢

转载自blog.csdn.net/xingyangs/article/details/84779193