【发布时间】:2021-03-12 15:52:50
【问题描述】:
我正在使用 SSH 隧道连接到 MSSQL Server 实例,我的 localhost 的端口号不是默认的 1433。为了连接到实例,我必须指定服务器名称,端口号用逗号分隔,例如 localhost,1267。
我能够从 SQL Server Management Studio 和 Azure Data Studio 成功连接它,但是当我在我的 python 项目中的 mssql+pyodbc 连接字符串服务器名称中用逗号指定端口号时,连接字符串不起作用。
我的连接字符串如下所示 -
mssql+pyodbc://user:password@localhost,1267/instance?driver=ODBC+Driver+17+for+SQL+Server
我尝试将端口号指定为 localhost:1267,但出现以下错误 -
sqlalchemy.exc.OperationalError: (pyodbc.OperationalError) ('HYT00', '[HYT00] [Microsoft][ODBC Driver 17 for SQL Server]Login timeout expired (0) (SQLDriverConnect)')
从数据工作室成功连接 -
【问题讨论】:
-
…@localhost:1267/…是 SQLAlchemy 连接 URI 的正确格式 -
是的,在文档中看到,我试过了,但没有用
-
请edit您的问题更好地描述“没有工作”的意思。例如,您是否收到错误消息?如果有,是什么?
-
感谢您的建议,我已经更新了我的问题并添加了异常消息
标签: sql-server python-3.x sqlalchemy pyodbc