导航

SQLITE事务处理小结

Posted on 2011-04-16 12:10  ccjvl  阅读(594)  评论(0编辑  收藏  举报

http://www.sqlite.org/lang_transaction.html

http://www.sqlite.org/cvstrac/wiki?p=DatabaseIsLocked

遇到回滚事务时数据库锁定的问题。

当sql语句(select)执行过程中出现错误(访问reader中不存在的索引),抛出异常,在异常中进行数据库事务回滚,数据库锁定,回滚失败。

如果在此之前有其他数据库操作删除,更新,插入,有可能会出现数据库修改异常的问题。

为确保不出现数据库更改错误,运用

ON CONFLICT clause

http://www.sqlite.org/lang_conflict.html

将 "OR ROLLBACK" 添加到更新数据库sql语句的后面。