是否可以使用hbm2ddl为某个数据库列生成默认值

时间:2010-07-11 13:03:21

标签: java mysql hibernate jpa hbm2ddl

环境:JPA 1,Hibernate 3.3.x,MySQL 5.x

我们使用hbm2ddl导出操作自动生成数据库模式。是否可以在SQL生成期间为某个@Entity成员生成默认值。 (例如mytable实体类中的归档字段。

create table mytable (
...
'archive‘ tinyint(1) default ’0 ’,
...
)

1 个答案:

答案 0 :(得分:1)

没有可移植的方法可以做到这一点,columnDefinition“技巧”绝对不是一个好的解决方案。实际上,在生成的DDL中设置默认值并不是一个好主意,这将要求提供程序返回数据库以在插入 1 之后查看结果。更好的Java代码默认值。

1 以防万一,请注意您可以使用@Generated注释告诉Hibernate执行此操作。