当前位置: 代码迷 >> Sql Server >> 初学者提问 关于事务锁 等待有关问题
  详细解决方案

初学者提问 关于事务锁 等待有关问题

热度:34   发布时间:2016-04-27 14:31:10.0
菜鸟提问 关于事务锁 等待问题
我想开启个事务 就是想让下面的操作只能一个事务操作 意思就是如果有两个并发连接的话 要等第一个事务操作Commit后 第二个事务再操作 也就是第一个事务在操作的时候第二个事务应该是等待
可是我测试了下 并没有这样 还是一起操作了。。。
是不是我把事务锁理解错啦 默认不是共享锁吗?? 那该如何解决呢(线程锁是一个办法,我知道,我只想知道事务锁可以达到线程锁的效果吗)

C# code
SqlConnection connection = new SqlConnection(SqlHelper.ConnectionString);connection.Open();//开启事务SqlTransaction transaction = connection.BeginTransaction();//查询select()//更新update()transaction.Commit();


------解决方案--------------------
//查询
select()
//更新
update()

你的查询和更新方法不在同一个事务中
------解决方案--------------------
隔离级别设置为可串行化
serializable
------解决方案--------------------
估计用Serializable无法实现楼主的需求,

因为没有SQL无法帮你分析,只能告诉你要实现这目的可以用applock,


  相关解决方案