Есть ли способ сохранить данные HSQLDB? - PullRequest
5 голосов
/ 09 ноября 2010

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

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

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

1 Ответ

6 голосов
/ 09 ноября 2010

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

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

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

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

...