在控制台应用程序中,我有一个像这样的连接字符串:
Data Source=localhost;Initial Catalog=database_name;Integrated Security=True;Connect Timeout=100
我已阅读here我需要将 Connect Timeout
添加到连接字符串以设置超时,但如果我运行的查询包含
WAITFOR DELAY '00:00:40';
我将收到超时异常,因此似乎忽略了连接字符串中的timeoput。那么如何在连接字符串中设置超时(而不是在连接或命令对象上)?
答案 0 :(得分:2)
有两个与SQL连接/命令相关的超时 - 有连接超时,它会影响连接尝试打开时愿意等待的时间,以及命令超时会影响正在执行的单个命令等待的时间。
您需要调整其中的第二项 - 例如在CommandTimeout
对象上设置SqlCommand
属性。
答案 1 :(得分:0)
不被忽视,这是行为......如果超时,它会引发异常。如果它没有超时,它将一直运行,直到返回查询。
只需使用try-catch块并在抛出异常时执行您想要的操作。