我正在处理合理数量的数据(~300MB,0.5mn行)
我无法拥有add_all
,因为数据中存在大量垃圾,如果且INSERT INTO
语句失败,则整个add_all
将失败。
我有以下内容:
for acc in accs:
try:
with session.begin_nested():
session.merge(acc)
except:
print "skipped id = " + acc.id
session.commit()
以上似乎比add_all
指数慢得多。
SQL Alchemy有哪些替代方法可以跳过错误并继续插入剩余的记录? bulk_save_objects
似乎没有提供"忽略错误"选项。