实体无法在Spring Boot 2.1中使用时提到的JPA ddl-auto =使用schema =创建/更新

时间:2019-06-13 12:46:52

标签: spring-boot jpa

我有一个带有以下用户实体类的spring boot应用程序:

testframe2 %>% filter(Day == "01-01" & v == "V1" & term == "Year") %>% pull(p.value)

,并且我正在使用ddl-auto = update(或创建)来自动生成数据库中的架构。使用的数据库是H2(也可以在HSQL中尝试过)。

现在一切正常(在启动应用程序时会自动生成所需的表),直到将实体类更改为以下内容(添加了schema =):

@Entity
@Table(name="user")
public class User {
...

现在,在创建表时出现错误:找不到模式“ MYSCHM”。似乎JPA期望存在模式MYSCHM,而不是自动创建它。

使用Spring Boot 2.1.5后,我开始观察到此问题。这在我使用Spring Boot 1.5.3时可以正常工作。 在Spring Boot 2+中进行任何更改会影响到此吗?我需要做一些配置更改吗?

谢谢

1 个答案:

答案 0 :(得分:1)

该模式不是由H2自动创建的。

您必须添加:

jdbc:h2:mem:test;INIT=CREATE SCHEMA IF NOT EXISTS MYSCHM