为了账号安全,请及时绑定邮箱和手机立即绑定

无法使用 sqlalchemy 建立连接 SQL Server

无法使用 sqlalchemy 建立连接 SQL Server

大话西游666 2021-12-09 10:34:25
我正在尝试使用 Python 从 Pandas 数据帧上传到 SQL Server 表,但我无法使用 sqlalchemy 成功创建连接。我知道我首先需要使用 create_engine() 创建一个引擎对象,然后使用 engine.connect() 创建一个连接对象,但我在 create_engine() 中输入的任何字符串似乎都不起作用。我尝试了以下方法:engine = create_engine('mssql+pyodbc://myServer/myDB')conn = engine.connect()和:engine = create_engine('mssql+pyodbc://Server=myServer;Database=myDB;')conn = engine.connect()和:engine = create_engine('mssql+pyodbc://Driver={SQL Server};Server=myServer;Database=myDB;Trusted_Connection=yes;')conn = engine.connect()但都导致以下错误:InterfaceError: (pyodbc.InterfaceError) ('IM002', '[IM002] [Microsoft][ODBC Driver Manager] 未找到数据源名称且未指定默认驱动程序 (0) (SQLDriverConnect)')我也试过:engine = create_engine('mssql+pyodbc://Driver={SQL Server Native Client 11.0};Server=myServer;Database=myDB;Trusted_Connection=yes;')conn = engine.connect()这导致以下错误:DBAPIError: (pyodbc.Error) ('IM010', '[IM010] [Microsoft][ODBC Driver Manager] 数据源名称太长 (0) (SQLDriverConnect)')虽然我可以像这样使用 pyodbc 成功连接:conn = pyodbc.connect('DRIVER={SQL Server};Server=myServer;Database=myDB;Trusted_Connection=yes;')我似乎无法为 sqlalchemy 做这项工作。任何帮助,将不胜感激。
查看完整描述

2 回答

?
噜噜哒

TA贡献1784条经验 获得超7个赞

解决方案:

engine = create_engine('mssql+pyodbc://ERRSTSDBP2/ActPri?driver=SQL+Server+Native+Client+11.0')

感谢norbeq让我一路走到了那里!


查看完整回答
反对 回复 2021-12-09
?
繁星coding

TA贡献1797条经验 获得超4个赞

您可以尝试这样连接:


engine = create_engine('mssql+pyodbc://user:password@host:port/myDB')

conn = engine.connect()


查看完整回答
反对 回复 2021-12-09
  • 2 回答
  • 0 关注
  • 515 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信