2

bulk_create()使用后端调用时django-pyodbc,将为批处理中的每个对象运行一个插入语句。行为应该是每批运行一个插入语句。

这是一个错误,还是有办法改变这种行为?

版本:

  • django==1.7
  • pyodbc==3.0.10
  • django-pyodbc==1.0.1
  • FreeTDS v1.00.21
  • unixODBC v2.3.4
4

1 回答 1

1

我打赌django-pyodbc您使用的版本不支持批量插入。我建议使用django-pyodbc-azure,您可以安装它:

pip install django-pyodbc-azure<1.8

django-pyodbc-azure将其版本号与 Django 匹配,因此您需要 1.7 分支中的最新/最佳版本(因此,<1.8)。

它应该支持bulk_insert()

https://github.com/michiya/django-pyodbc-azure/blob/adc5d88a9928cecc0e9d33aacca301e0084ff824/sql_server/pyodbc/features.py#L15

我还建议升级到 Django 1.8(长期支持)或 1.10(当前版本),因为不再为 1.7 发布安全补丁和错误修复。祝你好运!

于 2016-12-07T20:11:21.750 回答