默认行为

  默认为SET XACT_ABORT OFF,没有事务行为。

SET XACT_ABORT ON

  SET XACT_ABORT ON分为两种:

  1、总体作为一个事务,整体提交或整体回滚,格式为:

SET XACT_ABORT ONBEGIN TRAN--要执行的语句COMMIT TRANGO

  2、每个语句作为一个事务,事务在错误行终止,错误行回滚,错误行之前的不回滚,格式为:

SET XACT_ABORT ONBEGIN--要执行的语句ENDGO

测试

--创建测试表use MyDBCREATE TABLE student(            stuid int NOT NULL PRIMARY KEY,        stuname varchar(50))CREATE TABLE score (        stuid int NOT NULL REFERENCES student(stuid),        score int)GO

--插入测试数据INSERT INTO student VALUES (101,'zhangsan') INSERT INTO student VALUES (102,'wangwu') INSERT INTO student VALUES (103,'lishi') INSERT INTO student VALUES (104,'maliu') GO

---------------测试事务提交------------------use MyDB--只回滚错误行,语句还继续执行SET XACT_ABORT OFFBEGIN TRANINSERT INTO score  VALUES (101,90)INSERT INTO score VALUES (102,78) INSERT INTO score VALUES (107,76) /* Foreign Key Error */ INSERT INTO score VALUES (103,81) INSERT INTO score VALUES (104,65) COMMIT TRANGO/*stuid       score----------- -----------101         90102         78103         81104         65

(4 row(s) affected)*/

use MyDB--事务终止并全部回滚SET XACT_ABORT ONBEGIN TRANINSERT INTO score  VALUES (101,90)INSERT INTO score VALUES (102,78) INSERT INTO score VALUES (107,76) /* Foreign Key Error */ INSERT INTO score VALUES (103,81) INSERT INTO score VALUES (104,65) COMMIT TRANGO/*stuid       score----------- -----------(0 row(s) affected)*/

use MyDB--事务在错误行终止,错误行回滚,错误行之前的不回滚SET XACT_ABORT ONBEGININSERT INTO score  VALUES (101,90)INSERT INTO score VALUES (102,78) INSERT INTO score VALUES (107,76) /* Foreign Key Error */ INSERT INTO score VALUES (103,81) INSERT INTO score VALUES (104,65) ENDGO/*stuid       score----------- -----------101         90102         78(2 row(s) affected)*/

SET XACT_ABORT各种用法及显示结果相关推荐

  1. 事务中SET XACT_ABORT各种用法

    SET XACT_ABORT 一提到事务,也许,你的第一反应就是,要么全部执行,要么全部不执行,然而事实.............可以不是这样滴! 测试代码 CREATE TABLE TEST( ID ...

  2. html 弹出一个邮件连接,mailto scheme 高级用法, 显示带html样式的邮件文本

    需求: 今天同事问我一个需求,就是如果用html的mailto scheme,能否当其点击后弹出的outlook中,其内容正文部分是一个带有html的样式或格式的? 真是这样的么?因为10年前当刚接触 ...

  3. mysql xact abort,SET XACT_ABORT的用法

    指定当 Transact-SQL 语句产生运行时错误时,Microsoft® SQL Server™ 是否自动回滚当前事务. 语法 SET XACT_ABORT { ON | OFF } 注释 当 S ...

  4. matlab uicontrol中popupmenu(弹出式菜单)用法,用于显示不同的函数

    h0=figure('toolbar','none',...'position',[200 150 450 250],...'name','实例36'); x=0:0.5:2*pi; y=sin(x) ...

  5. sed的基本用法和高级用法

    sed 的详细用法 sed:stream editor 流编辑器 sed的工作模式:sed是一个行文本编辑器,默认每次处理文本中所匹配到一行内容到模式空间,然后用后面的命令进行操作,操作完成之后,会把 ...

  6. WeUI用Toast组件显示Loading

    在JQuery WEUI的官网(http://jqweui.com/components#toast)没有看到有显示Loading的用法,只有其他的用法,这里都给大家贴出来. 官网已有的用法 $.to ...

  7. Linux tree命令以树形结构显示文件目录结构

    我用的是阿里云服务器,CentOS7,默认没有tree这个命令,需要安装,用下面的命令就可以安装: sudo yum install tree 怎么样使用tree这个命令 其实有个非常简单的办法,就是 ...

  8. [Java]toString的用法

    toString的用法 要显示对象内容需要重写toString()方法 以下程序也可以看出一个java程序可以有两个class类 public class Java_2 {public static ...

  9. Ext.Net学习笔记20:Ext.Net FormPanel 复杂用法

    Ext.Net学习笔记20:Ext.Net FormPanel 复杂用法 在上一篇笔记中我们介绍了Ext.Net的简单用法,并创建了一个简单的登录表单.今天我们将看一下如何更好是使用FormPanel ...

最新文章

  1. 实现第一个自定义nginx模块
  2. 自动化运维之CentOS7下PXE+Kickstart+DHCP+TFTP+HTTP无人值守安装系统
  3. 日期类的加减及java中所以日期类的操作算法大全
  4. MFC:多窗口函数、变量调用
  5. maccms V10后门
  6. OpenCV-Python bindings是如何生成的(1)
  7. 如何c51和mdk共存兼容_2020年网站如何做seo优化
  8. Magic进博会!中国媒体上马了一条神奇的视频生产线
  9. 论网络安全(观直播后感)
  10. nginx动静分离配置_Nginx动静分离配置实例
  11. 2194. Excel 表中某个范围内的单元格
  12. Axure(软件下载安装与使用)——成为产品经理的必修课
  13. 华为手机上的计算机怎么没了,华为手机怎么连接电脑 华为手机连接不上电脑怎么回事 华为手机连接USB没反应...
  14. Unity 游戏框架搭建 2018 (一) 架构、框架与 QFramework 简介【转自游戏蛮牛】
  15. 亚马逊卖家运营必备八大工具
  16. 企业网站建设教程:自己怎么建网站,做网站的步骤有哪些
  17. springboot+Elasticsearch实现word,pdf,txt内容抽取并高亮分词全文检索
  18. java 经典算法(转)
  19. 成成你好呀笔记整理(知识点合集二)
  20. 百度阿里网易大疆等大小厂前端校招面筋 1

热门文章

  1. BZOJ1841 : 蚂蚁搬家
  2. Varnish的相关知识,varnish的简单应用
  3. Oracle Real Application Testing diagram
  4. 大型K8s沙龙来啦,火速报名——Kubernetes Cloud Native Meetup
  5. WebFlux响应式编程基础之 5 webflux服务端开发讲解
  6. Docker系列二~自定义网桥
  7. vuex:弄懂mapState、mapGetters、mapMutations、mapActions
  8. Socket技术详解
  9. upupw启动mysql失败,Can't init tc log
  10. 继承AppCompatActivity的Activity无法隐藏标题栏