事务中使用return会回滚事务吗?

答案:不会,如果在事务中没有显示提交或回滚事务边return,事务不会被提交或回滚,在C#中,如果没有使用连接池,则事务在连接断开和销毁时被强制回滚,如果使用连接池,则事务在连接被再次使用时调用的exec sp_reset_connection存储过程清理掉。如果该连接没有被再次使用或删除,则事务一直存在,便会一直锁住相关资源不释放,照常日志变大,镜像和复制异常等情况。

测试code:
--创建测试表
CREATE TABLE TB5
(
ID INT
)

测试C# CODE

SqlConnectionStringBuilder sb = new SqlConnectionStringBuilder();sb.DataSource = "192.168.1.101";sb.InitialCatalog = "db1";sb.Password = "Auto@sql";sb.UserID = "sa";sb.IntegratedSecurity = false;sb.ConnectTimeout = 60;sb.Pooling = true;int i = 1000;while (i > 0){using (SqlConnection conn = new SqlConnection(sb.ConnectionString)){conn.Open();SqlCommand comm = conn.CreateCommand();comm.CommandText = @"BEGIN TRAN TR1
INSERT INTO TB5(ID)
SELECT 1
RETURN ";comm.CommandType = System.Data.CommandType.Text;comm.ExecuteNonQuery();conn.Close();}i--;Console.WriteLine(i);}System.Threading.Thread.Sleep(60 * 1000);

转载于:https://www.cnblogs.com/TeyGao/p/3522965.html

Transaction And Lock--事务中使用return会回滚事务吗?相关推荐

  1. 如果分配给命令的连接位于本地挂起事务中,ExecuteReader 要求命令拥有事务。命令的 Transaction 属性尚未初始化...

    {System.InvalidOperationException: 如果分配给命令的连接位于本地挂起事务中,ExecuteReader 要求命令拥有事务.命令的 Transaction 属性尚未初始 ...

  2. session 中对象实例在不同事务中的状态

    不同事务中执行hibernate query,则查询出来的对象会在不同session中,或一个在托管态,一个在session中管理,所以是不同实例. 如果在同一事务中的话,则多次query出来的对象实 ...

  3. 如果MySQL事务中发生了网络异常?

    一 前言 在我们运维MySQL的时候,总会遇到各种情况导致程序和MySQL之间的会话异常中断,比如 假如强制关闭应用 假如client机器突然崩溃宕机/断电 假如网络发生抖动/网卡发生故障 机房级别断 ...

  4. mysql innodb事务中 出现_MySql InnoDB事务死锁问题

    这篇博客的文章内容发生于某天晚上服务端日志报了一大堆 Deadlock found when trying to get lock; try restarting transaction,当时通过字面 ...

  5. REPEATABLE-READ隔离级别 事务中无法读到其它事务提交了的最新数据

    前言: 业务要求一个简单的并发控制,使得一条数据只被确认一次,我的方案是 悲观锁,就是在事务中先对数据行加锁(MySQL InnoDB 行锁基于索引),判断是否已经确认过,未确认的情况下确认,已确认则 ...

  6. 分布式事务中的那些事——微服务总结(二)

    文章目录 前言 事务和分布式事务 导致数据不一致的问题 CAP和BASE理论 CAP理论 Base理论 常见的分布式事务解决方案 两阶段提交(2PC) TCC分布式事务 基于本地消息表的最终一致性 基 ...

  7. spring事务中的超时时间很多人都不理解

    在spring中如何使用事务是一个很大的问题,其中有一个我需要在这篇文章中着重讲解一下,就是spring事务中的超时时间问题,很多同学不知道如何才能是这个超时时间生效,导致在使用过程中出现各种各样的问 ...

  8. 一个事务中 可以查询自己未提交的数据吗_数据库事务的方方面面

    事务 是关系型数据的一个重要特性,但很少有人能对事务有全面性的了解,这篇文章就把事务的方方面面讲给你. 事务的概念 什么是事务 数据库事务(事务)是数据库管理系统执行过程中的一个逻辑单位,由一个有限的 ...

  9. spring jms 事务_Spring JMS:处理事务中的消息

    spring jms 事务 1.引言 这篇文章将向您展示使用JMS异步接收消息期间使用者执行过程中的错误如何导致消息丢失. 然后,我将解释如何使用本地事务解决此问题. 您还将看到这种解决方案在某些情况 ...

最新文章

  1. 英伟达GPU“屠榜”,谷歌TPU“退赛”,MLPerf最新推理榜单出炉
  2. 计算机程序c复杂,《计算机程序设计(C语言)》见面课答案
  3. RecyclerView复用item导致数据混乱
  4. asterisk 互联
  5. python tkinter 基本用法
  6. SQL:postgis中计算距离和面积
  7. 信息安全实验二、漏洞扫描与病毒防治
  8. error: field ‘ifru_hwaddr’ has incomplete type
  9. 面试25个经典问题回答技巧
  10. Tableau和BDP,哪个才是最适合中国用户的可视化分析工具?
  11. python1到100奇数相加_如何使用while语句求1到100的奇数和
  12. 数据结构与算法题目集7-32——哥尼斯堡的“七桥问题”
  13. ==06-07第一网络大事件---熊猫烧香==
  14. 让图片填满Word表格里的单元格
  15. python 列表去重拼题a_python list 合并连接字符串的方法 -电脑资料
  16. jdk自带监控工具整理-jstat
  17. 2019年中国森林冠层高度(树高)数据30m分辨率(附数据下载链接)
  18. 威纶通触摸屏如何编写和调用宏指令进行逻辑判断
  19. 松勤软件测试试题,如果让你测试一个完全不熟悉的系统,你会怎么办?
  20. CentOS 7 搭建ngrok服务器(外网映射内网)

热门文章

  1. Remove Duplicates from Sorted ListII
  2. 握手失败_拜托了,看完这篇别再问我什么是TCP三次握手和四次挥手
  3. Knn算法(机器学习)入门(Python实现)
  4. Java实现大数乘法_java实现大数加法、乘法(BigDecimal)
  5. QTextEdit 总结
  6. nginx相关知识点
  7. Win强制删除文件windows批处理强行删除文件
  8. CentOS 7系统关闭yum自动下载更新
  9. angular 与 highcharts 结合使用
  10. Gitlab备份与恢复[七]