1

我正在编写一些 python 来与我可以访问的 MSSQL 服务器进行交互。我目前遇到的问题是我的一个交易语句没有超过默认设置的超时期限(30 秒)。

我试图将连接字符串中的命令超时更改为值为 0,这样这不会成为问题,但我被告知命令超时关键字不受支持。

这是我的连接字符串:

conn_string='data source=localhost;initial_catalog=research;trusted_connection=True;Connection Timeout=0;Command Timeout=0'

这是我在使用此连接字符串时收到的控制台消息:

Value Error: Keyword not supported: 'command timeout'

我已经尝试使用空格、不带空格和带/不带大写字母的命令超时,具体取决于我在尝试解决此问题时当前正在阅读的任何支持线程。

当更改连接字符串中的命令超时似乎不起作用时,这里有没有人知道将超时值设置为超过 30 秒的方法?

4

3 回答 3

2

或者,您可以执行以下操作:

import adodbapi 
adodbapi.connect(connectionString, 100)

第二个参数是超时时间。

于 2012-05-03T15:36:17.813 回答
1

您在连接或命令对象本身上指定命令超时,而不是在连接字符串中。查看此资源以了解 ADO 连接对象。

于 2011-12-30T23:17:04.913 回答
1

该站点列出了您可以在连接字符串中设置的所有选项,但命令超时似乎不是其中之一。

如果您在 Windows 上使用 Python 并使用 ADO,则可以在连接对象上设置命令超时:

conn = Dispatch('ADODB.Connection')
conn.ConnectionString = "Provider=SQLOLEDB.1;Data Source=localhost;" + \
  "uid=my_user_name;pwd=my_password;database=my_database_name"
conn.Open()
conn.CommandTimeout = 60
于 2011-12-30T23:19:16.770 回答