是否可以将 HSQLDB 仅保存到文件中而内存中没有任何数据?

Is it possible to persist HSQLDB only to file without any data in memory?

查看 HSQLDB 的文档,似乎即使您在连接 URL 中指定了一个文件,它仍然会在内存中保存一些 table 数据。将 属性 hsqldb.cache_rows 设置为 0 会达到我想要的效果吗?

本质上,我希望它的行为类似于 sqlite,其中数据仅存储在文件中。在一次操作 (select/insert/update/delete) 之后,它将简单地修改这个文件,而不必在内存中进行任何更改。因此,当应用程序重新启动时,它可以简单地从该文件中读取之前保存的数据。是否可以复制此行为?

所有数据库系统在写入磁盘之前都会对内存进行更改。

如果您的问题是关于提交到磁盘的所有更改,这些是设置和选项。

属性 设置 hsqldb.write_delay=false 在提交时立即强制对磁盘进行所有更改。参见 http://hsqldb.org/doc/2.0/guide/dbproperties-chapt.html#dpc_db_file_mem

如果您使用 CREATE TEXT TABLE 将 table 数据存储在文本文件中,所有数据都会在提交时写入磁盘。参见 http://hsqldb.org/doc/2.0/guide/texttables-chapt.html