with (nolock)当你应该/不应该使用它时,有人可以解释使用查询的含义吗?
例如,如果您的银行应用程序具有较高的事务率和某些表中的大量数据,那么哪些类型的查询可以解决?是否应该经常使用它/从不使用它?
偶尔我会在生产环境中得到以下错误,这会在再次运行相同的存储过程时消失.
事务(进程ID 86)在锁资源上与另一个进程死锁,并被选为死锁牺牲品.重新运行该交易
有人告诉我,如果我在我的存储过程中使用NOLOCK提示,它将确保它永远不会死锁.它是否正确?有没有更好的方法来处理这个错误?
我正在使用MS-SQL 2008并在Web项目中使用C#进行编码.
目前,我陷入了sql死锁.
我有2个交易,其中两个是长期交易.
当两个事务同时运行时,会发生死锁,并且将选择短事务自动终止.
我的当前解决方案,我正在捕捉死锁的异常并重做短事务,它运行良好,只需要一些时间.
但是,我想知道是否有任何解决方案可以避免根本原因造成的死锁?