DataJpaTest не создает схему - PullRequest
2 голосов
/ 26 марта 2019

У меня есть проект среднего размера, использующий Spring Boot, и я пытаюсь создать свой первый DataJpaTest со встроенной H2, но я получаю следующее исключение:

org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL "drop table project.project.driver if exists" via JDBC Statemen
Caused by: org.h2.jdbc.JdbcSQLException: Schema "PROJECT" not found; SQL statement:

Я пытался this и с использованием схемы.sql , также this и с использованием test.properties в test / resources и этот другой ответ.Но ничего не сработало.Я действительно сбит с толку;это первый раз, когда я сталкиваюсь с проблемой в Spring Boot, что я не могу ее выяснить.

Мои классы сущностей определены как:

@Entity
@Table(name = "table_name", schema = "project", catalog = "project")
@Lombok.Data
public class TableNameEntity { }

Любое предложение о том, как форсироватьHibernate для создания схемы в H2?

1 Ответ

0 голосов
/ 26 марта 2019

Вы можете передать скрипт sql, который создает схему в URL h2:

jdbc:h2:mem:somedb;DB_CLOSE_DELAY=-1;INIT=RUNSCRIPT FROM 'classpath:create_schema.sql'

А в create_schema.sql было бы что-то вроде этого

CREATE SCHEMA IF NOT EXISTS project;
...