Hibernate hbm2ddl.auto配置的可能值是什么,它们做什么? [英] What are the possible values of the Hibernate hbm2ddl.auto configuration and what do they do
问题描述
我真的很想了解更多有关更新,导出以及可以提供给hibernate.hbm2ddl.auto
的值的信息.
我需要知道何时使用更新,何时不使用?还有什么选择呢?
I really want to know more about the update, export and the values that could be given to hibernate.hbm2ddl.auto
I need to know when to use the update and when not? And what is the alternative?
这些是可能在数据库上发生的更改:
These are changes that could happen over DB:
- 新表
- 旧表中的新列
- 列已删除
- 列的数据类型已更改
- 一种列的类型更改了其属性
- 表格已删除
- 列的值已更改
在每种情况下,最佳解决方案是什么?
In each case what is the best solution?
推荐答案
来自
hibernate.hbm2ddl.auto创建SessionFactory时,自动将模式DDL验证或导出到数据库.使用create-drop可以在显式关闭SessionFactory时删除数据库架构.
hibernate.hbm2ddl.auto Automatically validates or exports schema DDL to the database when the SessionFactory is created. With create-drop, the database schema will be dropped when the SessionFactory is closed explicitly. 例如验证更新|创建|创建拖放 e.g. validate | update | create | create-drop 所以可能的选项列表是 这些选项似乎旨在作为开发人员的工具,而不是为了促进任何生产级别的数据库,您可能需要查看以下问题; 休眠:hbm2ddl.auto =正在生产中更新吗? These options seem intended to be developers tools and not to facilitate any production level databases, you may want to have a look at the following question; Hibernate: hbm2ddl.auto=update in production? 这篇关于Hibernate hbm2ddl.auto配置的可能值是什么,它们做什么?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!