错误[HYT00] [Microsoft] [ODBC SQL Server驱动程序]超时过期SQL - 这是什么超时?

5 sql-server odbc odbc-sql-server-driver

我正在支持构建SELECT语句并将其发送到SQL Server的IIS Web应用程序.有时语句效率不高或者是针对相当大的表,因此从SQL Management Studio运行时需要三到四分钟才能完成.当从应用程序发送语句时,它会报告以下超时:

错误[HYT00] [微软] [ODBC SQL Server驱动程序]超时过期SQL:SELECT ...大型语句在这里...

(立即)改进发送的SQL语句是不可能的,所以我需要暂时增加任何超时时间.但我似乎无法找到与此错误消息对应的超时.我希望这里的某个人可以告诉我它所引用的超时时间以及可以查看/更改的位置?

小智 1

您可以更改连接字符串并将 Timeout=[秒] 添加到连接字符串 Connection String MSDN

请注意,HTTP 请求也可能超时,因此请确保您的 SQL 不超过该超时时间。然后是用户,非常烦人的因素;-) 这种实现也会使您的网站失去兴趣。

最好通过将表拆分为多个磁盘文件并添加 CPU 或 RAM 来解决此问题。还有一件事也有帮助,那就是查询与表同名的视图并删除对表的访问。像这样,您可以调整对不需要更改应用程序代码的位置的访问。

我们 DBA 做了很多事情来修复程序员的错误,所提到的封装方法只是众多选项之一。

希望能帮助到你

沃尔特