首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Pandas数据文件导出到Server中

问将Pandas数据文件导出到Server中
EN

Stack Overflow用户
提问于 2022-02-14 08:10:34
回答 1查看 418关注 0票数 0

我正试图使用以下代码将Pandas数据code导出到Server:

代码语言:javascript
复制
import pyodbc
import sqlalchemy
from sqlalchemy import engine

DB={'servername':'NAME', 'database':'dbname','driver':'driver={SQL Native Client 11.0}'
}


engine=create_engine('mssql+pyodbc://'+'DB['servername']+'/'+['database']+'/'+['driver'])

df.to_sql(con=engine,'test')

它显示的错误是

未指定数据源名称,也未指定默认驱动程序

df有1列和90k-100 k行,如何克服这个问题才能将dataframe (df)导出到Server?

EN

回答 1

Stack Overflow用户

发布于 2022-02-14 08:23:45

熊猫使用SQLAlchemy连接数据库,而数据库又可以使用PyODBC。微软的建议使用PyODBC连接到Server。

用于Server的SQLAlchemy文档显示连接字符串应该具有以下形式:

代码语言:javascript
复制
"mssql+pyodbc://user:password@myhost:port/databasename?driver=ODBC+Driver+17+for+SQL+Server"

即

代码语言:javascript
复制
engine = create_engine("mssql+pyodbc://user:password@myhost:port/databasename?driver=ODBC+Driver+17+for+SQL+Server")

还可以使用ODBC连接字符串:

代码语言:javascript
复制
from sqlalchemy.engine import URL
connection_string = "DRIVER={SQL Server Native Client 10.0};SERVER=dagger;DATABASE=test;UID=user;PWD=password"
connection_url = URL.create("mssql+pyodbc", query={"odbc_connect": connection_string})

engine = create_engine(connection_url)

您必须为操作系统安装PyODBC和正确的Server驱动程序。Python上的Server文档链接到适用于Windows、各种Linux发行版和MacOS的适当驱动程序

如果无法保存到Server,请使用Server入门教程确保可以连接到数据库

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71108760

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档