我们可以在不将其添加到休眠对象的情况下在数据库中添加列吗?



在数据库中添加额外的列会中断休眠吗?

只要

定义为NOT NULL,或者定义了DEFAULT值就可以了。

插入 Hibernate 发出的语句不会为列提供值(显然),但它生成的语句在语法上是正确的,即使它不知道列 - 列及其值根本不会在插入语句中提及。

如果必须以某种特殊方式派生值,则可以考虑使用数据库触发器来维护该列中的值,但除非绝对必要,否则会谨慎使用数据库功夫,例如,如果您无法控制休眠实体类的源代码,并且该列必须是无法声明为列默认值的某个特定值。

更新和选择语句不需要特殊处理。

如果您的意思是通过休眠自动更新表,那么您可以在休眠配置文件中使用以下方法

 <property name="hbm2ddl.auto">create</property>

相关内容

最新更新