Spring框架用JPA更新PostgreSQL全文检索类型(tsvector)字段报错
代码及SQL
SQL可以执行:
update tb_es set name_orderby ='''位置'':2A ''游戏'':3A ''建议'':1A' where code ='123';
JPA执行报错:
@Transactional
@Modifying
@Query(value = "update tb_es set name_orderby = :nameOrderBy where code = :code", nativeQuery = true)
public void updatePnNameOrderBy(@Param("code")String code, @Param("nameOrderBy") String nameOrderBy);
JPA执行报错:
SqlExceptionHelper [main] WARN - SQL Error: 42804, SQLState: 42804
SqlExceptionHelper [main] ERROR - 错误: 字段 "pn_name_orderby" 的类型为 tsvector, 但表达式的类型为 character varying
建议:你需要重写或转换表达式
位置:39
我的解答思路和尝试过的方法
尝试添加@Type注解,未成功
@Type(type = "org.hibernate.type.TextType")
@Column(name = "name_orderby")
private String nameOrderby;