2012-01-16 60 views
0

我知道这已被问了一堆,但我似乎无法得到我已阅读解决我的问题的修复。我得到SQL Server错误,“超时完成操作或服务器没有响应超时。”我将工具>选项>设计器>“覆盖连接字符串超时值”下的设置更改为120秒(根据this发布),但是...它在30秒后仍然超时。我从visual studio访问数据库,直接使用它,而不是在客户端代码中使用ado。我打开的建议......这里的BTW查询:SQl服务器我需要修复“超时过期,超时时间已过”的错误

SELECT Symbol FROM tblSymbolsMain WHERE ((SELECT dbo.LatestDateInDailyPricingVolBySymbol(tblSymbolsMain.Symbol) AS Expr1) < dbo.RecentTradingDateByNumber(5))

概括地说,我们的目标是从没有每天的价格数据点主要符号表中返回所有的股票代码在定价表中至少5个交易日。

一如往常在此先感谢..

+0

当您直接从数据库工具(如Management Studio)调用该查询时,该查询是否会快速运行? – DOK 2012-01-16 19:15:59

+0

当您在Management Studio中运行查询时会发生什么?完成查询所用的时间是多少? – HardCode 2012-01-16 19:18:58

+0

@DOK,HardCode我现在运行,我们在5分钟,仍然运行..它看起来像我需要更好的逻辑? – StatsViaCsh 2012-01-16 19:24:04

回答

1

犯规似乎是正确的代码...你有...WHERE (SELECT...) 哪里是什么?

你确定你是不是以后

SELECT MyCols FROM MyTable WHERE ID IN (...)

OR

SELECT MyCols FROM MyTable WHERE ID NOT IN (...)

其中(...)代表了另一种选择返回某种ID的。

否则,当然你会得到一个超时。该选择可能会返回一个计数,并且WHERE 1可以继续并继续...

+0

我同意当我读你的文章,并采取了我的另一个第一遍,但WHERE子句应该返回一个布尔值,评估每一行。该功能比较比较两个日期。我会认为没有问题... – StatsViaCsh 2012-01-16 20:07:19

+0

StatsViaCsh - 很好,如果它涉及到一个布尔值你的查询仍然不正确,你必须说:'SELECT blah FROM MyTable WHERE myCol <(SELECT ...)'这就是你所缺少的,目前你没有比较任何东西。 – JonH 2012-01-16 20:10:20

+0

Gotcha ..所以我需要选择“比较”。你是对的,它现在正在运行,但以一种改变的形式,谢谢。 – StatsViaCsh 2012-01-16 20:16:03

相关问题