【发布时间】:2019-09-15 01:53:33
【问题描述】:
我正在尝试找到一种更好的方法来使用 python 将数据推送到 sql db。我努力了
dataframe.to_sql() 方法和 cursor.fast_executemany()
但他们似乎并没有提高我现在正在使用的数据的速度(数据在 csv 文件中)。有人建议我可以使用 named tuples 和 generators 来比 pandas 更快地加载数据。
[通常 csv 文件大小至少为 1GB,推送一个文件大约需要 10-17 分钟]
我对 python 的许多概念都很陌生,所以请建议一些方法或至少参考任何显示任何信息的文章。提前致谢
【问题讨论】:
-
当您说“sql 数据库”时,您是指 Microsoft SQL Server 吗?如果是这样,您使用的是微软的“ODBC Driver 17 for SQL Server”吗?
-
是的,我的错我忘了提,它适用于使用 driver:"SQL Server Native Client 11.0" 的 SQL Server 17
-
回复:“fast_executemany ... [不] 似乎提高了速度” - This pyodbc issue 可能感兴趣。
标签: python python-3.x pandas sqlalchemy pyodbc