我无法在此处或在Google上找到答案。休眠+ H2不更新yes_no类型列
我的问题如下:
我有一个实体与YES_NO类型列
public class MyEntity {
@Column(name = "IS_DELETED")
@Type(type = "yes_no")
private Boolean itemDeleted = Boolean.FALSE;
}
在数据库中,该列是CHAR(1)
IS_DELETED CHAR(1) CHECK ("IS_DELETED" IN ('Y', 'N'))
下面的代码构成H2中的问题与我的JUnit测试(在应用程序运行时与Oracle运行良好):
myEntityRepositoryService.save(myEntity);
所有而非 yes_no类型的列都被正确更新。我启用了一些休眠日志来检查提交是否发生,如果交易已经发布,......一切正常。所有列都更新得很好但不是yes_no列。
我试图在保存之前的代码中的其他字段(如随机数)中设置一些随机值。它工作,值被保存,但不是布尔列。
注意,仓库服务扩展org.springframework.data.jpa.repository.JpaRepository
是否存在与Hibernate的YesNoType一个已知的问题?难道我做错了什么? H2需要一个特殊的配置?
您是否找到答案。我与H2和grails有类似的问题,正在转向生产。数据库重新创建时在内存中正常工作,但在生产中它已更新。 – John