sql: 在连接字符串中设置连接超时
sql: set connection timeout in the connection string
在控制台应用程序中,我有一个这样的连接字符串:
Data Source=localhost;Initial Catalog=database_name;Integrated Security=True;Connect Timeout=100
我读过 here 我需要在连接字符串中添加 Connect Timeout
来设置超时,但是如果我 运行 包含
的查询
WAITFOR DELAY '00:00:40';
我会得到一个超时异常,所以似乎连接字符串的时间输入被忽略了。那么如何在连接字符串中设置超时(而不是在连接或命令对象上)?
没有忽略,就是这个行为...如果超时,就会抛出异常。如果它没有超时,它只会 运行 直到查询返回。
只需使用 try-catch 块,并在抛出异常时执行您想要的操作。
有两个与 SQL connections/commands 相关的超时 - 有一个 connection 超时,它会影响连接愿意等待的时间尝试打开它,然后 command 超时会影响正在执行的单个命令将等待多长时间。
您需要调整其中的第二个 - 例如在 SqlCommand
对象上设置 CommandTimeout
属性。
在控制台应用程序中,我有一个这样的连接字符串:
Data Source=localhost;Initial Catalog=database_name;Integrated Security=True;Connect Timeout=100
我读过 here 我需要在连接字符串中添加 Connect Timeout
来设置超时,但是如果我 运行 包含
WAITFOR DELAY '00:00:40';
我会得到一个超时异常,所以似乎连接字符串的时间输入被忽略了。那么如何在连接字符串中设置超时(而不是在连接或命令对象上)?
没有忽略,就是这个行为...如果超时,就会抛出异常。如果它没有超时,它只会 运行 直到查询返回。
只需使用 try-catch 块,并在抛出异常时执行您想要的操作。
有两个与 SQL connections/commands 相关的超时 - 有一个 connection 超时,它会影响连接愿意等待的时间尝试打开它,然后 command 超时会影响正在执行的单个命令将等待多长时间。
您需要调整其中的第二个 - 例如在 SqlCommand
对象上设置 CommandTimeout
属性。