标签: h2
我在嵌入模式下使用H2编写了一组单元测试。无论测试对数据库做出什么改变都会留在那里。
我知道推荐的方法是创建一个空白的内存数据库,并在打开连接时创建模式。
然而,我正在寻找另一种方法。我想 -
我怎样才能做到这一点?
答案 0 :(得分:1)
在与此类似的情况下,我所做的是编写创建数据库并填充表的SQL脚本。然后,应用程序使用Flyway DB应用数据库迁移。
其他可能性是创建数据库并从CSV文件加载表。另一种方法是使用不同的应用程序创建数据库,并使用SCRIPT命令创建文件以创建备份。您的主应用程序必须运行RUNSCRIPT命令才能还原数据库。
答案 1 :(得分:0)
我使用创建表和其他对象的SQL脚本和/或填充它们,并在应用程序开始时运行这些脚本。
还可以创建已填充的磁盘数据库的副本,将其打包到ZIP / JAR存档中,然后将其打开read only,以用于重新创建和填充内存数据库。