Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在开发一个依赖于 WAL 日志模式在 Sqlite 中提供的读取快照隔离的项目。它使用到同一个数据库的多个连接来允许并发读取器和单个写入器。
对于测试,我想使用内存数据库,但据我所知,这需要SQLITE_OPEN_SHAREDCACHE(这使 WAL 模式提供的读取快照隔离保证无效)。
SQLITE_OPEN_SHAREDCACHE
有没有办法在私有缓存模式下打开到内存中、WAL 模式、SQLite 数据库的多个连接?
这个问题是否有(预先存在的)VFS 解决方案?
WAL 模式文档
WAL 模式不适用于内存数据库。
要获得 WAL(和读取快照隔离),您需要使用磁盘上的临时数据库。(此磁盘可以是 RAM 磁盘。)