C#的SqlTransaction和TransactionScope事务处理的锁表问题
SqlTransaction和TransactionScope两种事务,在更新的时候,都会卡住其他地方的查询比如,我一个WEB应用中在界面1中使用TransactionS...
SqlTransaction和TransactionScope
两种事务,在更新的时候,都会卡住其他地方的查询
比如,我一个WEB应用中在界面1中使用TransactionScope事务后,开启一个死循环,往数据库Table1表中插入数据。每次插入数据后暂停1秒时间。在界面2中使用SqlTransaction事务后,开启一个死循环,往数据库Table1表中插入数据。每次插入数据后暂停1秒时间。在界面3中直接对数据库Table1表插入一条特殊数据,然后再查询数据库Table1表。在IIS中挂起后,我访问第一个界面,或者第二个界面,在超时前同时访问第三个界面,会在查询的时候,超时。停掉所有页面,再访问数据库中,能看见第3个页面中插入的特殊数据已经入库。 其中,我的TransactionScope的隔离级别尝试过ReadCommitted,ReadUncommitted,Unspecified。我的SqlTransaction的隔离级别尝试过ReadCommitted,ReadUncommitted。最后都得到的是这个结果。 求高人指点,在我用事务的时候,怎么让其他地方可以正常的访问数据库 展开
两种事务,在更新的时候,都会卡住其他地方的查询
比如,我一个WEB应用中在界面1中使用TransactionScope事务后,开启一个死循环,往数据库Table1表中插入数据。每次插入数据后暂停1秒时间。在界面2中使用SqlTransaction事务后,开启一个死循环,往数据库Table1表中插入数据。每次插入数据后暂停1秒时间。在界面3中直接对数据库Table1表插入一条特殊数据,然后再查询数据库Table1表。在IIS中挂起后,我访问第一个界面,或者第二个界面,在超时前同时访问第三个界面,会在查询的时候,超时。停掉所有页面,再访问数据库中,能看见第3个页面中插入的特殊数据已经入库。 其中,我的TransactionScope的隔离级别尝试过ReadCommitted,ReadUncommitted,Unspecified。我的SqlTransaction的隔离级别尝试过ReadCommitted,ReadUncommitted。最后都得到的是这个结果。 求高人指点,在我用事务的时候,怎么让其他地方可以正常的访问数据库 展开
2个回答
2013-04-26
展开全部
没试过
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-04-26
展开全部
没试过
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询