SQL Server Hibernate列默认值true需要Map到SQLServer BIT默认值1

67up9zun  于 2022-12-22  发布在  其他
关注(0)|答案(1)|浏览(166)

我需要将@org.hibernate.annotations.ColumnDefault("true")Map到生成的SQL模式中的BIT default 1。除了添加@Column(columnDefinintion="BIT default 1")之外,还有其他方法吗
我使用SQL Server 2008方言和休眠5.3.26和XPAND生成代码。
我也尝试过使用@org.hibernate.type.BooleanType,但它不起作用。在hibcore和org/hibernate/cfg/Ejb3Column.java:625中做了一些调试,在org/hibernate/cfg/Ejb3Column.java:625中它接受@ColumnDefault注解值,然后在org/hibernate/mapping/Table.java:561中设置它,因为它没有Map。可能我错过了一些东西。是否有任何东西可以覆盖这个功能?
在模式生成中,SQL类型和默认值Map发生在哪里?类方法等。
任何帮助都将不胜感激。

5uzkadbs

5uzkadbs1#

使用以下组合解决了问题。

@org.hibernate.annotations.Type(type = "org.hibernate.type.BooleanType")
@org.hibernate.annotations.ColumnDefault(value = "1")

相关问题