SQl Server仍然收到"超时已过期.超时时间已过"的错误

Sta*_*Csh 7 t-sql sql-server sql-server-2008

我以为我的帖子中有一个sql错误就在这里 ... ...(错误信息:超时已到期.在操作完成之前超时时间已过,或者服务器没有响应.")我正在尝试使用Visual Studio中的数据库工具运行...而不是管理工作室,而不是通过客户端代码/ ADO(还).我重写了一个相当简单的查询,它使用了几个自定义函数...函数以及部件查询已经过测试并且运行良好,但是下面的查询超时..这确实与Management Studio中的输入完全相同,大约需要4分钟.正如我在其他帖子中提到的,我更改了工具下的设置>选项>设计器>"覆盖连接字符串超时值"到120秒,但是......它在30秒后仍然超时.在最新版本中添加ISNULL是它在管理中运行的更改工作室.

SELECT Symbol, LatestDate
FROM (SELECT Symbol, ISNULL(dbo.LatestDateInDailyPricingVolBySymbol(Symbol), '1/1/1900') AS LatestDate FROM tblSymbolsMain) AS T2
WHERE (LatestDate < dbo.RecentTradingDateByNumber(3))
Run Code Online (Sandbox Code Playgroud)

一般的想法是在我的每日定价表中至少返回3天没有相应数据点的股票代码子集.任何接受者?谢谢大家.

Jon*_*nor 10

不考虑你的超时;

您使用SQL管理控制台来运行查询吗?如果是这样,当连接到数据库时,有一个选项按钮,允许用户设置超时.

连接选项

此外,如果在查询窗口中,右键单击并选择查询选项....

0,意味着无限制,我会检查这些.4分钟很长一段时间,也许查询可以重构运行得更快?

在此输入图像描述

如果您通过C#在Visual Studio内部运行此命令,则默认命令超时为30秒.通过设置命令超时来改变它:

SqlCommand comm= new SqlCommand();
comm.CommandTimeout = 300;
Run Code Online (Sandbox Code Playgroud)