hbm2ddl.auto= 创建/创建-删除 它也会删除数据



在休眠中,如果我们将 hbm2ddl.auto 设置为 create/create-drop ,那么它将删除旧模式并在启动时创建新模式。这意味着,它也将删除数据?..我的怀疑是,如果它删除了所有内容,那么我们如何检索旧数据?(例如:用户注册详细信息(以及在生产环境中应该使用的正确选项是什么?

如果我错了,请纠正我。

它基本上在关闭时删除托管实体表(不是方案中的所有表(,并在重新启动时重新创建它们。根据您的问题表示;是的,数据也会从表中删除。它不会删除整个架构,而只会删除实体管理器中的实体。

在生产环境中应该使用什么正确的选项?

恕我直言,生产环境的唯一有效选择是validate.其他所有内容都可能导致由于错误、简单错误或拼写错误而导致丢失数据/破坏数据库模式的潜在风险。

使用迁移工具进行架构更新,因为它们提供对架构的"版本控制",允许在诱饵之前对其进行测试,并还原更改。

验证现有架构

更新 - 仅在创建架构后更新架构

创建 - 每次都创建架构。

这里也是一个很好的解释Hibernate hbm2ddl.auto可能的值以及它们的作用?

最新更新