【问题标题】:Python dataframe to SQL Server writing problemPython 数据框到 SQL Server 的写入问题
【发布时间】:2020-03-11 12:59:28
【问题描述】:

我可以连接到 sql-server 数据库并使用 python 从 python 读取数据,

cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=server_name;DATABASE=testdb;UID=Another_Domain\\username;PWD=pass; Trusted connection=YES')

但是当我尝试使用 python 将数据写入 sql-server 时,

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

我收到一个错误,

InterfaceError: (pyodbc.InterfaceError) ('IM002', '[IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified (0) (SQLDriverConnect)') (Background on this error at: http://sqlalche.me/e/rvf5)

如何连接?

【问题讨论】:

  • 与您提出的问题无关,但是,如果您在第一条语句中使用受信任的连接,为什么要传递用户名和密码?这是一个或另一个。
  • 第二个block好像来自sqlalchemy,它的连接语法和pyodbc很不一样。您必须明确分配驱动程序字符串。您可以参考以下 MWE(最小工作示例)并查看它是否有效。 stackoverflow.com/a/60636359/3218693

标签: python sql-server dataframe


【解决方案1】:

也许你可以连接的方式是:

create_engine('mssql+pymssql://{domain}\{username}:{password}@{hostip}:{port}/{db}')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-11-29
    • 2022-06-11
    • 1970-01-01
    • 2021-06-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多