zoukankan      html  css  js  c++  java
  • (4.19)sql server中的事务模式(隐式事务,显式事务,自动提交事务)

    (4.19)sql server中的事务模式(隐式事务,显式事务,自动提交事务)

    1.概念:隐式事务,显式事务,自动提交事务

    2.操作:如何设置事务模式

    3.存储过程中的事务 XACT_ABORT  

    1.概念

      【1】隐式事务:即每个窗口系统会自动加上begin tran,但是不会自动提交,需要手动使用 commit 提交。

      【2】显示事务:需要begin tran             commit tran/ rollback tran   配合使用

      【3】自动提交事务:每一个DML、DDL都是独立的事务,并且一旦执行就自动提交/错误也会自动回滚。

    事务的基本控制语句


    BEGIN TRANSACTION 表示本地事务的开始
    BEGIN DISTRIBUTED TRANSACTION表示分布式事务起始
    COMMIT TRANSACTION表示事务的提交
    ROLLBACK TRANSACTION表示事务的回滚
    COMMIT事务的提交 与COMMIT TRANSACTION功能相同
    ROLLBACK 事务的回滚与ROLLBACK TRANSACTION功能相同
    SAVE TRANSACTION设置事务保存点

     

    2.操作

      【1】隐式事务

        SET IMPLICIT_TRANSACTIONS ON 语句启动隐性事务模式
        SET IMPLICIT_TRANSACTIONS OFF 语句关闭隐性事务模式

      【2】显式事务

        通过发出 BEGIN TRANSACTION 语句显式启动事务。

      【3】自动提交事务,默认为此项,无需设置;

        只要隐式事务和显式事务没有开启,就是自动提交事务。

      SSMS操作,右击实例-》属性-》连接

        

    3.存储过程中的事务 XACT_ABORT 

          SET XACT_ABORT ON是设置事务回滚的!  默认为OFF

          当为ON时,如果你存储中的某个地方出了问题,整个事务中的语句都会回滚;且不会再执行该事务内的所有语句了;
          为OFF时,只回滚错误的地方。事务内剩余的语句都会执行;
          举例:一个过程里有10行dml,执行到第5行出错。
            【1】如果为on,则直接回滚整个事务,并且报错
            【2】如果为off,则只会回滚出错的第5行,其余1-4,6-10可以正常执行并且提交保存;
     
     
  • 相关阅读:
    设计模式总结
    字符编码小结
    搞定java.io
    将代码托管到GitHub上
    linuxlinux 路由表设置 之 route 指令详解 路由表设置 之 route 指令详解
    linux子系统的初始化_subsys_initcall()
    Linux系统目录结构介绍
    EtherType :以太网类型字段及值
    socket编程原理
    linux下的网络接口和网络桥接
  • 原文地址:https://www.cnblogs.com/gered/p/10437395.html
Copyright © 2011-2022 走看看