【发布时间】:2018-04-19 03:51:20
【问题描述】:
在 linux 机器上使用 pyodbc 连接到 SQL Server 命名实例时,我一直在努力找出错误。当连接到不使用命名实例的其他 SQL Server 时,我可以正常连接。下面的示例适用于没有命名实例的服务器:
import pyodbc
DB_WMS_NJ62 = 'DRIVER={ODBC Driver 13 for SQL Server};SERVER=xxx.xxx.xxx.xxx;PORT=1433;DATABASE=dbname;UID=dbuserid;PWD=dbpass'
conn = pyodbc.connect(DB_WMS_NJ62)
这可以正确连接并允许我执行查询。
以下是我有问题的代码。更改IP,添加命名实例,更改为指定端口63810
import pyodbc
DB_WMS_ONTMOD2 = 'DRIVER={ODBC Driver 13 for SQL Server};SERVER=xxx.xxx.xxx.xxx\\fontanasql;PORT=63810;DATABASE=dbname;UID=dbuserid;PWD=dbpass'
conn = pyodbc.connect(DB_WMS_ONTMOD2)
运行上述,我收到错误:
pyodbc.OperationalError: ('HYT00', '[HYT00] [unixODBC][Microsoft][ODBC Driver 13 for SQL Server]Login timeout expired (0) (SQLDriverConnect)')
任何帮助表示赞赏。
分辨率: 戈德汤普森的建议奏效了。那是我的确切错误。 非常感谢!
【问题讨论】:
标签: sql-server python-3.x pyodbc