我得到以下sql异常: 交易锁定资源与另一个进程死锁,并被选为死锁牺牲品。重新运行交易。在批次结束时检测到不可提交的事务。事务回滚。 我没有任何存储过程中的任何交易,我从.net进行交易,我总是使用它们来调用它们。 你们以前遇到过吗?交易已死锁
Q
交易已死锁
2
A
回答
3
交易是一个交易,不管从哪里开始。无论是在C#或RDBMS。
您的using
问题BEGIN TRANSCATION有效。
MSDN (for SQL Server 2000 but still valid)建议您在检测到死锁时自动重试,而不是在此处编写代码,Google上有许多结果供您阅读。
0
使用事务时,您需要小心,因为默认情况下它将隔离级别设置为可串行化。当连接释放回池中时,它仍然具有该级别设置。这可能严重损害并发性。
相关问题
- 1. 交易 - 如何避免死锁?
- 2. 在InnoDB死锁后重复交易
- 3. 交易(进程ID 56)锁定时死锁?
- 4. 交易 - 读锁
- 5. 交易和锁
- 6. PHP锁定交易
- 7. neo4j锁定交易
- 8. 死锁在单台无交易(?)上更新或插入语句
- 9. Laravel究竟是如何处理交易死锁的?
- 10. “死锁受害者”在交易中,如何改变优先权?
- 11. 尝试锁定时发现死锁;尝试重新启动交易
- 12. 交易已中止
- 13. 这个BlockingQueue是否容易死锁?
- 14. 交易,锁,隔离级别
- 15. 交易锁定SQL Server 2005
- 16. 交易锁的替代
- 17. .Net交易锁问题
- 18. Rails 3 - 交易和锁定
- 19. 交易中的Postgres锁
- 20. 交易和锁定MySQL
- 21. sql lite交易锁定
- 22. MYSQL X锁与交易
- 23. 锁表直到交易提交
- 24. PayPal交易已过期
- 25. Postgresql锁死锁
- 26. 如何判断是否有可能在交易中看到死锁?
- 27. 死锁
- 28. 提交失败:已锁定
- 29. PHP和pgbouncer处于交易模式:当前交易已中止
- 30. 在死锁后重新提交事务
海事组织MSDN在这方面显然是错误的。如果你只是在没有任何想法的情况下自动重试,你很可能会覆盖别人的变化,也就是说,失去了变化。 – 2011-01-07 19:41:58