使用 sqlalchemy 将数据帧推送到 Azure SQL DB 表

问题描述 投票:0回答:1

我有一个 python 脚本将数据帧推送到 Azure SQL DB,运行良好。我现在使用一台新计算机,我必须更新 python 和使用的软件包,例如 sqlalchemy 等

现在,脚本正在执行,但是对于将数据帧数据推送到 SQL 表的部分来说,速度非常慢,我什至尝试了 pyspark 并得到了相同的结果,导致此问题的原因是什么,这里是代码:

con_str = (
    'Driver={ODBC Driver 17 for SQL Server};'
    'SERVER=myserver.database.windows.net;'
    'Database=mydb;'
    'UID=myuserid;'
    'PWD=mypw;'
    'Trusted_Connection=no;'
)


# create engine
connection_uri = f'mssql+pyodbc:///?odbc_connect={urllib.parse.quote_plus(con_str)}'
engine = sa.create_engine(connection_uri, fast_executemany=True)

conn_sa=engine.connect()

df_projects_2.to_sql("WfProjects", engine, schema="wf", if_exists="append", index=False)
python sqlalchemy azure-sql-database
1个回答
0
投票

这就是我解决问题的方法:

1-使用旧计算机上的 python freeze 保存了requirements.txt中的所有包

2-在新系统中创建新的虚拟环境

3-在新的虚拟环境中安装相同的python(旧版本)

4-使用requirements.txt安装所有软件包

© www.soinside.com 2019 - 2024. All rights reserved.