Не могли бы вы рассказать о различиях между HSQLDB и JavaDB? И какой из них следует использовать в модульном тестировании, предполагая, что я использую только стандартные функции? Благодарю.В чем разница между HSQLDB и JavaDB? Какой из них подходит для модульного тестирования?
2
A
ответ
1
HSQLDB имеет функции, которые могут быть полезны для тестирования и недоступны в JavaDB. К ним относятся
- сценарий базы данных и войдите в формате SQL текста позволяет быстро проверить тест работает
- определяемые пользователем функции SQL, которые позволяют писать эквивалент любой функции поддерживаемую другой базы данных очень просто
- очень обширный набор функций SQL и функций, например, даты и интервала арифметики, как поддерживается DB2 и Oracle (также PostgreSQL и MySQL) и функций, таких как TO_DATE
Кстати, вышеуказанные функции не доступны в H2 (упоминается в другой ответ)
4
HSQLDB быстрее, поэтому он лучше подходит для модульных испытаний.
H2 Database еще лучше (на мой взгляд): он работает так же быстро, как и HSQLDB, и поддерживает режимы совместимости для различных баз данных (MySQL, Oracle, ...). Поэтому, если вам нужно использовать функции базы данных в будущем, есть вероятность, что вы все равно можете проверить ее на H2. Но мой взгляд немного предвзятый (см. Мой профиль).