Создание схемы до hbm2ddl

Я хочу протестировать свою программу с помощью inmemory hsqldb. Для создания таблицы я использую hibernate.hbm2ddl.auto=create Но я получаю исключение, потому что схемы, определенные в классах сущностей аннотациями, не создаются до создания таблиц. Теперь я ищу возможность создать схемы до запуска hibernate.hbm2ddl.auto. Чтобы удалить схемы, это не возможность для меня, потому что они мне нужны для моей программы.

Моя проблема почти такая же, как this. Я не использую spring, поэтому решение не работает для меня.

Ответ 1

Предполагая, что вы используете базу данных H2, вы можете предоставить команду init для запуска с URL-адресом соединения jdbc. Например:

your.jdbc.url=jdbc:h2:mem:;DB_CLOSE_DELAY=-1;INIT=create schema IF NOT EXISTS your_schema

К сожалению, проблема с hibernate jira до сих пор не решена. https://hibernate.atlassian.net/browse/HHH-5665