Есть ли способ сохранить данные HSQLDB?


Все наши модульные тесты написаны так, что они создают и заполняют таблицы в HSQL. Я хочу, чтобы разработчики, которые используют это, могли писать запросы к этой базе данных HSQL ( 1) путем написания запросов они могут лучше понять модель данных, а те, кто не так хорошо знаком с SQL, могут играть с данными перед написанием инструкций времени выполнения и 2) поскольку у них нет доступа к тестовой базе данных/причинам безопасности). Есть ли способ сохранить результаты испытаний, чтобы они могли быть исследовать и анализировать с помощью клиента sql?

Прямо сейчас я пытаюсь подстроить его, переключив источник данных на другую БД (например, DB2/mysql, а затем подключившись к этой БД на моей машине, чтобы я мог играть с постоянными данными), однако для меня было бы проще, если бы HSQL поддерживал сохранение этого, чем объяснять, как это сделать каждому новому разработчику.

Просто чтобы быть ясным, мне нужен клиент SQL для взаимодействия с постоянными данными, поэтому отладка и проверка памяти не будут чистыми. Это имеет больше к занимайтесь первоначальной разработкой, а не отладкой/обслуживанием/тестированием.

1 5

1 ответ:

Если вы используете экземпляр сервера HSQLDB для своих тестов, данные переживут тестовый запуск.

Если сервер использует url-адрес jdbc:hsqldb:mem:aname (all-in-memory) для своей базы данных, то данные будут доступны во время работы сервера. В качестве альтернативы сервер может использовать url-адрес jdbc:hsqldb:file:filepath, и данные сохраняются в файлах.

Последние документы HSQLDB объясняют различные варианты. Большинство наблюдений также относится к более старым (1.8.x) версии. Однако последние версия 2.0.1 поддерживает запуск сервера и создание баз данных динамически при первом подключении, что может значительно упростить тестирование.

Http://hsqldb.org/doc/2.0/guide/deployment-chapt.html#N13C3D