我正在尝试解决可怕的Timeout过期sql错误。我注意到了一种模式如下。
在第一个sql命令来自Web项目的服务中发生第三步错误。那么因为#1其他连接失败而导致连接断开是可能的吗?如果有,有办法排除某些命令使用连接池?谢谢!
更新
- 我正在使用MS SQL 2012和Entity框架。 - 我已将整个db事务级别设置为READ UNCOMMITTED,因为我们不关心脏读
答案 0 :(得分:1)
第一个语句是锁定数据库级别的所有其他语句。你在使用SQL Server吗?根据我的经验,SQL Server在很多场景中锁定表,DBA总是恢复为脏读 - 任何其他锁定配置都会引起太多争用。
要解决此问题,您可以在临时表中执行长时间运行的工作,然后在工作完成后复制到真实表。