HSQLDB和JavaDB有什么区别?哪一个适合单元测试?

时间:2010-08-27 01:13:47

标签: unit-testing hsqldb javadb

你能告诉我HSQLDB和JavaDB之间的区别吗?假设我只使用标准功能,我应该在单元测试中使用哪一个?感谢。

2 个答案:

答案 0 :(得分:4)

HSQLDB速度更快,因此更适合单元测试。

H2 Database甚至更好(在我看来):它与HSQLDB一样快,并且支持各种数据库(MySQL,Oracle,...)的兼容模式。因此,如果您将来需要使用特定于数据库的功能,您可能仍然可以使用H2进行测试。但我的观点有点偏颇(见我的个人资料)。

答案 1 :(得分:1)

HSQLDB具有对测试有用且在JavaDB中不可用的功能。其中包括

  • 数据库脚本和登录SQL文本格式允许快速检查测试运行
  • 用户定义的SQL函数,允许您非常简单地编写与另一个数据库支持的任何函数的等效函数
  • 非常广泛的SQL特性和函数集,例如DB2和ORACLE(也是PostgreSQL和MySQL)支持的日期和间隔算法以及TO_DATE等函数
顺便说一句,上述功能在H2中不可用(在另一个答案中提到)