2010-08-27 5 views
2

Не могли бы вы рассказать о различиях между HSQLDB и JavaDB? И какой из них следует использовать в модульном тестировании, предполагая, что я использую только стандартные функции? Благодарю.В чем разница между HSQLDB и JavaDB? Какой из них подходит для модульного тестирования?

ответ

1

HSQLDB имеет функции, которые могут быть полезны для тестирования и недоступны в JavaDB. К ним относятся

  • сценарий базы данных и войдите в формате SQL текста позволяет быстро проверить тест работает
  • определяемые пользователем функции SQL, которые позволяют писать эквивалент любой функции поддерживаемую другой базы данных очень просто
  • очень обширный набор функций SQL и функций, например, даты и интервала арифметики, как поддерживается DB2 и Oracle (также PostgreSQL и MySQL) и функций, таких как TO_DATE

Кстати, вышеуказанные функции не доступны в H2 (упоминается в другой ответ)

4

HSQLDB быстрее, поэтому он лучше подходит для модульных испытаний.

H2 Database еще лучше (на мой взгляд): он работает так же быстро, как и HSQLDB, и поддерживает режимы совместимости для различных баз данных (MySQL, Oracle, ...). Поэтому, если вам нужно использовать функции базы данных в будущем, есть вероятность, что вы все равно можете проверить ее на H2. Но мой взгляд немного предвзятый (см. Мой профиль).