繁体   English   中英

ODBC 中的连接超时

[英]Connection timeout in ODBC

我知道我可以在使用 ADO 或 OLE DB 时设置 MS SQL Server 的连接超时,方法是将Connect Timeout=somevalue添加到连接字符串。

但这似乎不适用于 ODBC 连接。 具体来说,我们决定使用 Windows XP 附带的标准 SQL Server ODBC 驱动程序(SQLSRV32.DLL 版本 2000.85.1132.00)而不是较新的 SQL Native Client,并且使用此驱动程序连接总是在 15 秒后超时,无论连接超时设置如何。

此外,当它超时时,我会收到两个错误。 第一个是超时,第二个是“无效的连接字符串属性”,所以我猜连接超时不是我需要的。 我错过了情节的最后一条线索来自这篇有点过​​时的文章: http : //msdn.microsoft.com/en-us/library/ms811006.aspx

有谁知道是否有办法在标准 SQL Server ODBC 驱动程序的连接字符串中指定连接超时?

您可以通过使用SQLSetConnectAttr设置 SQL_ATTR_CONNECTION_TIMEOUT 连接属性来设置连接超时。

您可以通过使用SQLSetStmtAttr()设置 SQL_ATTR_QUERY_TIMEOUT 语句属性来设置语句查询超时。

我有同样的问题。 实际上,就在我写这篇文章的那一刻,我检查了SQLSetConnectAttr并惊讶地阅读了第一句话

“SQL Server Native Client ODBC 驱动程序忽略SQL_ATTR_CONNECTION_TIMEOUT 的设置。”

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM