首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >spring-data-jpa自动权限

spring-data-jpa自动权限
EN

Stack Overflow用户
提问于 2019-10-30 09:21:33
回答 1查看 639关注 0票数 0

我的项目使用。

公司规定,测试环境和生成的环境数据库帐户只具有读写权限。

我发现,当ddl设置为none时,数据库结构也会被更改,因为没有权限导致服务在开始时失败。如何设置ddl-auto属性,使程序不更改数据库,也不进行检查?

spring-data-jpa文档:https://docs.spring.io/spring-boot/docs/current/reference/html/howto.html#howto-database-initialization

10.2。使用Hibernate初始化数据库,您可以显式地设置spring.jpa.hibernate.ddl-auto,并且标准Hibernate属性值为none、values、update、create和create。Spring根据它是否认为您的数据库是嵌入式的,为您选择一个默认值。默认情况下,如果没有检测到架构管理器,或者在所有其他情况下都没有。通过查看连接类型检测嵌入式数据库。hsqldb、h2和derby是嵌入的,而其他则不是。在从内存中切换到“真实”数据库时,要小心,不要对新平台中的表和数据的存在做出假设。您必须显式地设置ddl-auto,或者使用其他机制来初始化数据库.。

EN

回答 1

Stack Overflow用户

发布于 2019-10-30 09:30:31

spring.jpa.hibernate.ddl-auto=none

标准Hibernate属性值是:创建、更新、创建-删除、验证和无

创建- Hibernate首先删除现有表,然后创建新表。

update -基于映射(注释或XML)创建的对象模型与现有模式进行比较,然后Hibernate根据差异更新模式。它从不删除现有的表或列,即使应用程序不再需要这些表或列。

create- drop -类似于create,另外Hibernate将在所有操作完成后删除数据库。通常用于单元测试。

验证- Hibernate只验证表和列是否存在,否则会引发异常。

none -此值有效地关闭了DDL生成

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58622076

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档