在从6.1.7升级到6.2.0时,我在模式验证过程中得到以下错误消息:
Caused by: org.hibernate.tool.schema.spi.SchemaManagementException: Schema-validation: wrong column type encountered in column [receiving_status] in table [buddies_anonymized]; found [int (Types#INTEGER)], but expecting [tinyint (Types#TINYINT)]
字符串
完整的类BuddyAnonymized
可以在here中找到。属性receivingStatus
的声明如下(没有应用注解):
private Status receivingStatus = Status.NOT_REQUESTED;
型
Status类型是一个枚举,定义如下:
public enum Status
{
NOT_REQUESTED, REQUESTED, ACCEPTED, REJECTED
}
型
这个问题我在Hibernate项目上报告为HHH-16422。由于我还没有得到回应,我想实现一个解决方案,并显式定义列类型,如下所示:
@Column(columnDefinition = "INTEGER")
private Status receivingStatus = Status.NOT_REQUESTED;
型
但是,仍然报告了相同的错误。这里发生了什么问题?
1条答案
按热度按时间wf82jlnq1#
use columnDefinition =“int”:
字符串
这对我很有效