如何在 pywin32 中更改命令超时。 'Open' 方法

How to change command timeout in pywin32. 'Open' method

我在使用 pywin32 库并尝试连接到 OLEDB 时遇到问题。

回溯

Traceback (most recent call last):
  File "<input>", line 35, in <module>
  File "<input>", line 31, in ado
  File "<COMObject ADODB.Recordset>", line 4, in Open
    the XML parser for analysis: the response Time for the XML for analysis request timed out before it was completed.', None, 0, -2147467259), None)

我尝试将 Connect Timeout=1000 添加到我的 connectionstring 中,但没有成功。

代码

import win32com.client
import pyodbc

conn = win32com.client.Dispatch(r'ADODB.Connection')
    DSN = CONNECTION_STRING
    conn.Open(DSN)

    rs = win32com.client.Dispatch(r'ADODB.Recordset')



        strsql = u"""
    select

        ...
        ...
        ...

        """

    h = rs.Open(strsql, conn,0,1)
    ts = rs.GetRows()
    conn.Close()
    return ts

我认为问题出在这里:

h = rs.Open(strsql, conn,0,1)

我看不出应该将哪些参数传递给 'Open'。但是我觉得它必须有超时参数。

如何更改命令超时?

问题解决加入:

conn.CommandTimeout=3000