用于缩短.NET代码和SQL Server之间执行时间的核对表.从基本到奇怪的解决方案的任何事情都表示赞赏.
码:
更改avgbody在命令和连接中的默认超时.
使用存储过程调用而不是avgbody的内联sql语句.
使用Jay Shepherd的 Activity监视器查找阻塞/锁定.
SQL Server:
请注意AlexCuse在存储过程中的参数嗅探.
谨防Martin Clarke动态增长数据库.
使用Profiler查找BradO需要更长时间100毫秒的任何查询/存储过程.
avgbody增加事务超时.
avgbody将动态存储过程转换为静态过程.
查看Jay Shepherd对服务器的忙碌程度.
过去我的一些解决方案是:
修复sqlcommand的默认超时设置:
Dim myCommand As New SqlCommand("[dbo].[spSetUserPreferences]",myConnection)
myCommand.CommandType = CommandType.StoredProcedure
myCommand.CommandTimeout = 120
增加连接超时字符串:
Data Source = mydatabase; Initial Catalog = Match; Persist Security Info = True; User ID = User; Password = password; 连接超时= 120
在sql-server 2005中增加事务超时
在管理工作室的工具>选项>设计器中增加"事后超时:",即使"覆盖表设计器更新的连接字符串超时值"已选中/未选中.
将动态存储过程转换为静态过程
使代码调用存储过程,而不是在代码中编写内联sql语句.