sqlite回滚的原因是什么?

时间:2016-12-07 05:17:37

标签: sql multithreading sqlite

我正在对sqlite数据库进行序列化访问。所有线程都使用相同的数据库句柄。

sqlite3_config(SQLITE_CONFIG_SERIALIZED);

在涉及许多insert语句的一个事务语句中,我正在删除另一个线程中的行。两人都试图修改同一张桌子。

我得到的事务是滚动支持。我想知道这是否可能是回滚的原因。

你能帮我找一下这个问题吗?提前谢谢。

此致 拉杰夫

1 个答案:

答案 0 :(得分:1)

一个连接有一个事务。 因此,在使用多个线程时,应为每个线程使用一个连接。

SQLite的线程模式可以防止数据库结构本身被破坏,但是当多个线程同时尝试对数据库执行任何操作时,它们仍然会干扰彼此的数据。 / p>