【问题标题】:How to bulk insert data to mysql with python如何使用python将数据批量插入mysql
【发布时间】:2010-10-06 15:45:05
【问题描述】:

目前我使用 Alchemy 作为 ORM,我正在寻找一种方法来加快我的插入操作,我有很多 XML 文件要导入

for name in names:
    p=Product()
    p.name="xxx"
    session.commit()

我使用上面的代码将我的数据分析器从批处理 xml 文件插入到 mysql,它非常慢 我也尝试过

for name in names:
    p=Product()
    p.name="xxx"
session.commit()

但它似乎没有改变任何东西

【问题讨论】:

  • @mizboy 您需要提供更多信息。只是没有足够的信息来建议速度优化。提供当前查询等。

标签: python mysql sqlalchemy bulkinsert


【解决方案1】:

您可以绕过 ORM 进行插入操作并改用 SQL Expression generator

类似:

conn.execute(Product.insert(), [dict(name=name) for name in names])

这应该创建一个语句来进行插入。

该示例取自lower down the same page

(我很想知道你从中获得了什么加速)

【讨论】:

  • 最后我改用mysqlimport cmd工具,确实很快,但是应该建一个csv文件
猜你喜欢
  • 2013-09-26
  • 2013-08-15
  • 2021-10-25
  • 1970-01-01
  • 1970-01-01
  • 2016-10-13
  • 2018-03-14
  • 2021-08-04
相关资源
最近更新 更多