python - 如何使用python批量向mysql插入数据

标签 python mysql sqlalchemy bulkinsert

目前我正在使用 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()

但似乎没有改变任何东西

最佳答案

您可以绕过插入操作的 ORM 并使用 SQL Expression generator相反。

类似于:

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

这应该创建一个语句来执行插入操作。

该示例取自 lower down the same page .

(我很想知道您从中获得了多少加速)

关于python - 如何使用python批量向mysql插入数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3874320/

相关文章:

python - Pyramid 相当于 Django 的 syncdb 命令?

python - SQLAlchemy 3个表之间的关系

python - 使用 ctypes 在 Python 中使用 Rust 返回的数组

python - 在 BeautifulSoup 中扩展 CSS 选择器

php - PHP 和 MySQL 中的实时搜索(不适用于数组?)

MySQL:数百张表还是一张大表?

python - 如何完全关闭sqlalchemy注销

python - Django - 'AnonymousUser' 对象不可迭代,因为我在上下文处理器中使用了用户过滤器

python - 从列表中删除一个子列表,其中的数字已存在于另一个子列表中

php - 使用Python插入MySQL二进制(8)字段