当前位置: 首页 > 知识库问答 >
问题:

更改Spring Boot使用的数据库架构

向锦
2023-03-14

如何指定Spring Boot使用的数据库模式?我使用默认的hibernate(=默认)和postgres(但我希望有一个通用的解决方案)。我知道如何指定JDBC URL:

spring.datasource.url=jdbc:postgresql:db_name

但不幸的是,postgresql不允许在JDBCURL中指定模式。我知道有hibernate属性hibernate。默认模式,因此我希望以下属性之一能够正常工作:

hibernate.default_schema=schema
spring.hibernate.default_schema=schema
spring.jpa.hibernate.default_schema=raw_page

但不幸的是,它们似乎都没有任何结果。

共有3个答案

云鸿祯
2023-03-14
spring:
  jpa:
    properties:
      hibernate:
        default_schema: your_schema_name
长孙章横
2023-03-14

它取决于DataSource实现,必须使用哪个属性来设置默认模式(引用)。例如,HikariDataSourcespring.jpa.properties.hibernate.default_schema被忽略,您必须设置

spring.datasource.hikari.schema=schema

请参阅此处HikariCP配置参数的完整列表。

竺展
2023-03-14

用于应用程序。属性

spring.jpa.properties.hibernate.default_schema=your_scheme 

或用于应用程序。yaml

spring:
  jpa:
    properties:
      hibernate.default_schema: your_scheme

从Spring Boot参考指南:

spring中的所有属性。jpa。财产* EntityManagerFactory时,代码>作为普通JPA属性传递(去掉前缀)

看见http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto-配置jpa属性

有关可用物业的完整列表,请参阅http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto-configure-jpa-properties

 类似资料:
  • 问题内容: 如何指定Spring Boot使用的数据库架构?我正在使用默认的hibernate(=默认)和postgres(但我希望一个通用的解决方案)。我知道如何指定JDBC URL: 但是不幸的是,postgresql不允许在JDBC URL中指定架构。我知道这里有hibernate属性hibernate.default_schema,所以我希望以下属性之一可以工作: 但是不幸的是,他们似乎都

  • 问题内容: 根据本文,您可以使用Spring Framework中的AbstractRoutingDataSource来动态更改应用程序使用的数据源。 但是,使用的数据源是通过配置定义的,而不是通过编程定义的。有没有一种方法可以配置要在运行时使用的数据源? 该解决方案的可扩展性如何,即数据源数量上的限制是什么? 谢谢! 问题答案: 我已经为30个数据源实现了这种方法,并且它们当前正在生产环境中运行

  • 问题内容: update 我可以创建我的数据库架构,它会自动添加属性,约束,键等。但是,更新数据库架构又如何呢?如果我从实体中删除了某些属性,hibernate则不会删除它,或者如果我更改了某些约束,则hibernate不会触及已经创建的约束… 那么,有没有一种方法可以使hibernate状态真正更新数据库架构? 谢谢。 问题答案: 我们为自己创建了一个工具,该工具创建了必要的数据库列和表,并将其

  • 问题内容: 按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 跟踪和/或自动执行数据库架构更改的最佳方法是什么?我们的团队使用Subversion进行版本控制,我们已经能够以这种方式自动执行一些任务(将构建推送到暂存服务器

  • 是否可以在程序运行时更新数据库架构?我使用过ddl自动更新,但它有时不会添加或删除列,所以我必须编辑为,然后返回进行架构更新。为什么它不一致地更新架构,我宁愿在接近生产之前不使用迁移工具。因此,理想情况下,当我向实体添加字段或删除它时,它应该在下次运行程序时尝试更新方案。

  • 任何帮助都将成为徒弟