是否可以使用mysql dump来填充hsqldb数据库?

时间:2013-02-28 15:29:00

标签: mysql hibernate junit hsqldb

我正在尝试复制hsqldb的mysql表,以便在我的JPA / Hibernate项目中运行一些单元测试。

目前只有两个表,但我不能在hsqldb中创建。我使用Spring文档中的示例代码在测试用例之前运行schema.sql脚本:

db = new EmbeddedDatabaseBuilder().addDefaultScripts().build();

但它始终失败,出现“意外令牌”异常,令牌范围从“DATABASE”到“(”。

是否有将mysql转储转换为hsqldb可以理解的内容的直接方式?或者我应该以其他方式填充测试数据库吗?

1 个答案:

答案 0 :(得分:1)

我在HSQL和MySQL数据库工作了很多年,我知道没有工具可以将MySQL转储转换为hsqldb脚本。我在这里看到两个解决方案:

  1. 制作将MySQL转储转换为hsqldb脚本的脚本或程序。您可以按照此帖子中要执行的步骤列表进行操作: How to load mysql dump to hsqldb database? 使用BOTH回复 https://stackoverflow.com/a/3813164/891479https://stackoverflow.com/a/7791340/891479 因为第一个不完整。
  2. 创建一个连接到两个数据库的小程序,将MySQL表加载到对象中并填充hsqldb。
  3. 我们总是使用第一种解决方案,它可能是最简单的解决方案。