Luc*_*lon 4 database sqlite isolation-level
我编写了一个应用程序(在C ++中使用Qt),该应用程序将数据插入SQLite数据库。另一个应用程序从同一数据库读取数据,但是我注意到无法读取未提交的数据。我希望即使尚未提交数据也能够读取数据。
阅读SQLite文档后,我发现杂物read_uncommitted,据我所知应该是我所需要的。问题是,即使将其设置为true,也无法获得未提交的数据。
我试图运行执行插入过程的应用程序,同时启动sqlite3客户端。我将编译指示设置为true,然后尝试计算表中的记录。我得到的始终为0(在插入过程开始之前数据库为空),直到整个过程完成为止,我立即获得了所有数据。
难道我做错了什么?难道这不应该使sqlite3客户端的行为有所不同吗?
我对自己说:不,看来不可能。read_uncommitted隔离模式要求启用共享高速缓存,当前仅对位于同一进程中的不同线程可能。这似乎是学习此内容的最佳场所:http : //www.sqlite.org/sharedcache.html。