我刚刚开始使用HSQL数据库而且我误解了数据的存储格式
我通过Hibernate创建了简单的测试程序创建实体。我使用了HSQL的基于文件的独立进程内模式
我得到了这个数据文件:
testdb.script
SET DATABASE UNIQUE NAME HSQLDB52B647B0B4
// SET DATABASE lines skipped
INSERT INTO PERSON VALUES(1,'Peter','UUU')
INSERT INTO PERSON VALUES(2,'Nasta','Kuzminova')
INSERT INTO PERSON VALUES(3,'Peter','Sagan')
INSERT INTO PERSON VALUES(4,'Nasta','Kuzminova')
INSERT INTO PERSON VALUES(5,'Peter','Sagan')
INSERT INTO PERSON VALUES(6,'Nasta','Kuzminova')
据我所知,当我获得大量数据时,所有数据都将作为SQL脚本存储并在每次数据库启动时执行并保存在内存中?
答案 0 :(得分:0)
.script
文件中的INSERT语句用于数据库的MEMORY表。
如果使用CREATE CACHED TABLE ...
创建表,或者使用SET TABLE <name> TYPE CACHED
将MEMORY表更改为CACHED,则表的数据将存储在.data
文件中,并且不会有INSERT .script
中的陈述。文件。