Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/381.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用spring和hibernate自动创建postgresql模式(默认的“public”模式除外)_Java_Spring_Postgresql_Hibernate - Fatal编程技术网

Java 如何使用spring和hibernate自动创建postgresql模式(默认的“public”模式除外)

Java 如何使用spring和hibernate自动创建postgresql模式(默认的“public”模式除外),java,spring,postgresql,hibernate,Java,Spring,Postgresql,Hibernate,我想使用spring和hibernate初始化本地postgresql数据库,但使用: spring.jpa.hibernate.ddl-auto=create spring.jpa.generate-ddl=true 它不会使用@Table(name=“Table\u name”,schema=“schema\u name”)创建我在实体类中配置的架构,我得到错误: 原因:org.postgresql.util.PSQLException:错误:架构“schema_name”不存在 有没有办

我想使用spring和hibernate初始化本地postgresql数据库,但使用:

spring.jpa.hibernate.ddl-auto=create
spring.jpa.generate-ddl=true
它不会使用
@Table(name=“Table\u name”,schema=“schema\u name”)
创建我在实体类中配置的架构,我得到错误:

原因:org.postgresql.util.PSQLException:错误:架构“schema_name”不存在


有没有办法自动创建模式?

尝试使用flyway/liquibase来创建/初始化。我非常怀疑Hibernate是否能够做到这一点。混淆层通常不支持在所有数据库系统中都不可用的高级功能,正如其他人所指出的,您可以使用db版本控制工具作为
liquibase
来实现这一点,但是Spring作为boostrap时执行SQL的选项,请参见
Spring Boot可以自动创建模式(DDL脚本)并初始化它(DML脚本)。它分别从标准根类路径位置schema.SQL和data.SQL加载SQL