我的目标
我想批量插入多个记录到sqlite(事务性).
我的问题
我找到了这个方法android.content.ContentResolver.bulkInsert(..)有趣,但javadoc声明:
此函数不保证插入的原子性.
为什么android会提供一种瘫痪的方法?你能说出用于非原子插入的用例吗?我显然要覆盖ContentProvider.bulkInsert(..)以确保自己的原子性,所以我不确定为什么它是这样的短语.
请改用 applyBatch()。
这允许您以事务方式执行许多不同的操作,但是这种灵活性会降低性能。
相关文档可以在ContentResolver SDK文档中找到
我提供了有关在backReferences 的语义中使用 applybatch 的快速教程
我还建议查看这个问题,其中讨论了重写 applyBatch