【发布时间】:2015-04-30 14:32:00
【问题描述】:
我有一个应用程序可以将多行(100 行)插入和/或更新到表中。在我的应用程序中一次只运行一个线程。在多个函数中的每次插入/更新之前,都会计算和检查每一行。
我担心如果应用程序在插入行的开始和结束之间被中断,我的数据将会损坏/不完整。这可能发生吗?
我多次尝试使用 home 键中断该过程,但没有成功,但这并不是详尽的方法。
我正在实现这里讨论的单例方法:Is Sqlite Database instance thread safe 但这并不能解决我的问题。
【问题讨论】:
-
在所有 UPDATE 和 INSERT 周围使用 transaction。
-
如果我分别插入 200 多行,围绕所有更新和插入的事务将不起作用。我想出了正确的方法(我认为)。将所有行信息放入一个arraylist,然后在开始和结束事务之间放置一个循环以插入所有行。不过感谢您的评论,它为我指明了正确的方向。
-
如果不想使用事务,为什么要接受推荐事务的答案?
标签: sqlite