0

我正在为 java 中的 SQLite 寻找一个好的(与 JDBC 兼容的)替代品。我找到了 hsqldb ,这让我很满意,但也有一些问题。

第一的。当数据库大小为 3-4GB 时它是如何运行的?仍然将所有内容加载到 RAM 中?

第二。那里说,它可以支持二进制格式,而不仅仅是脚本。我该如何启用它?

Class.forName("org.hsqldb.jdbcDriver");
PleaseHsqlUseBinaryFormat(); // What should I write here or somewhere else?
link = DriverManager.getConnection("jdbc:hsqldb:file:/tmp/mydatabase.hsql","sa","");
try
{
    // Work with database
}
4

1 回答 1

1

HSQLDB 很灵活,允许您选择数据的存储方式。如果您希望将数据存储在磁盘表中,请使用 CACHED 表。最简单的方法是向连接 URL 添加一个属性:

jdbc:hsqldb:file:/tmp/mydatabase.hsql;hsqldb.default_table_type=cached

所有 CREATE TABLE 和类似的语句都存储在 .script 文件中。如果您不希望此文件为文本格式,请添加另一个属性:

jdbc:hsqldb:file:/tmp/mydatabase.hsql;hsqldb.default_table_type=cached;hsqldb.script_format=3

该指南涵盖了不同的选项:

http://hsqldb.org/doc/2.0/guide/management-chapt.html

于 2012-11-17T18:45:09.167 回答