6

可以通过activerecord使用sqlite3的“共享缓存”吗?(见:http ://www.sqlite.org/inmemorydb.html )

我在 JRuby Swing 应用程序中使用独立的 activerecord(没有 rails),其中涉及一些工作线程。问题:只有主线程可以访问数据,因为每个线程都会重建一个新的内存数据库。所以我得到了

[SQLITE_ERROR] SQL 错误或缺少数据库(没有这样的表:insert_model_name)

来自任何地方,除了主线程。有解决方法还是我错过了什么?(我使用最新版本的 jruby、java 和 gems)

提前致谢!

到目前为止的数据库配置:https ://gist.github.com/4482423

更新:说明问题的最小脚本。它在 Linux 下运行良好,但在 WINdows 7 下运行良好:https ://gist.github.com/4483617

4

1 回答 1

3

以下令牌效果很好:
"file::memory:?cache=shared"
另外,请检查您的 SQLite 版本,它应该至少是 3.7.13 才能支持此功能。

于 2015-03-07T16:48:11.380 回答