我正在对sqlite数据库进行序列化访问。所有线程都使用相同的数据库句柄。
sqlite3_config(SQLITE_CONFIG_SERIALIZED);
在涉及许多insert语句的一个事务语句中,我正在删除另一个线程中的行。两人都试图修改同一张桌子。
我得到的事务是滚动支持。我想知道这是否可能是回滚的原因。
你能帮我找一下这个问题吗?提前谢谢。
此致 拉杰夫
答案 0 :(得分:1)
一个连接有一个事务。 因此,在使用多个线程时,应为每个线程使用一个连接。
SQLite的线程模式可以防止数据库结构本身被破坏,但是当多个线程同时尝试对数据库执行任何操作时,它们仍然会干扰彼此的数据。 / p>