Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 如何将超时参数传递给SQL数据库引擎_Sql Server_Sql Server 2005_Tsql - Fatal编程技术网

Sql server 如何将超时参数传递给SQL数据库引擎

Sql server 如何将超时参数传递给SQL数据库引擎,sql-server,sql-server-2005,tsql,Sql Server,Sql Server 2005,Tsql,我正在运行一个查询,前两次超时,第三次返回结果 如何告诉SQL Server等待查询完成,而不是超时?默认情况下,SqlCommand.CommandTimeout设置为30秒。您可以在执行查询之前分配更长的持续时间,或者设置为0表示无超时。(如果问题涉及.Net编程)您也可以在连接字符串中将其设置为连接范围。 “数据源=(本地);初始目录=AdventureWorks;集成安全=SSPI;连接超时=30”超时由客户端应用程序控制,而不是服务器。这是客户机愿意等待服务器响应的时间 用于访问数据库

我正在运行一个查询,前两次超时,第三次返回结果


如何告诉SQL Server等待查询完成,而不是超时?

默认情况下,SqlCommand.CommandTimeout设置为30秒。您可以在执行查询之前分配更长的持续时间,或者设置为0表示无超时。(如果问题涉及.Net编程)

您也可以在连接字符串中将其设置为连接范围。

“数据源=(本地);初始目录=AdventureWorks;集成安全=SSPI;连接超时=30”
超时由客户端应用程序控制,而不是服务器。这是客户机愿意等待服务器响应的时间

用于访问数据库的任何包都会在某个地方有一个超时值

例如,在使用ADODB的VBA中,可以按如下方式将超时设置为60秒:

Dim cn As ADODB.Connection
Set cn = new ADODB.Connection
cn.CommandTimeout = 60 
正如Shane在上面指出的,您也可以在连接字符串中设置它


我认为您可以将其设置为0,这样它就永远不会超时,但不建议这样做,因为这意味着如果服务器挂起或数据库连接丢失,您的应用程序将永远等待。

感谢shane的回答。德维奥的答案也很有效。也将更改“连接字符串超时”选项,并查看其工作原理。@Shane:连接超时是影响执行命令的超时,还是只影响打开连接的超时?我的错误-连接超时只是与数据库的初始连接的超时。谢谢你的礼貌。:)