有没有办法在使用Hibernate创建列后为现有条目设置默认值?
发现该操作可以通过以下方式手动完成:
ALTER TABLE Employee
ADD DEFAULT('SANDNES') FOR CityBorn
但有没有办法用hibernate做某事?
答案 0 :(得分:0)
这将是休眠的方式。
@Column(name="CityBorn", columnDefinition="default 'SANDNESS'")
private String cityBorn;
答案 1 :(得分:0)
您可以使用注释
@ColumnDefault("SANDNES")
与指定的here
一样或xml-fragment
<column name="CityBorn" default="SANDNES" />
与指定的here
一样如果你想让Hibernate重新创建数据库,你必须指定hibernate.hbm2ddl.auto = update,但这不是推荐的生产方式(参见例如this question) 通常会使用第三方工具进行模式迁移(例如liquibase或flyway)。 hbm2ddl(由Hibernate使用)的可能性是有限的。