在Postgresql中,我有一个类型为BIT(1)的列。在JPA映射中,它就像:
@Column(columnDefinition="bit(1)")
private String type;
但是,当我执行测试时,会发生以下错误:
错误:列“type”的类型为bit,但表达式的类型为字符变化 提示:您需要重写或转换表达式。 排名:117
我尝试过使用其他Java类型:char,int,Boolean和BitSet。但是,会发生同样的错误。
您知道如何将Postgresql类型BIT(1)映射到Hibernate JPA吗?
答案 0 :(得分:0)
Hibernate不支持PostgreSQL的类型位。 尝试在转换中使用spring JPA的本地查询。例如:
@Modifying @Query(value = "update table set is_active = cast(:is_activeas bit) where id = :id", nativeQuery = true)
int updateTable(@Param("is_active") int isActive, @Param("id") long id);