当前使用版本(必须填写清楚,否则不予处理)

postgresql 12 mp 3.3.0

该问题是怎么引起的?(最新版上已修复的会直接close掉)

这也许是我使用上的问题,初衷是我想生成一条特殊的update语句: update set my_table my_column1 = my_column1 || ? where id = ? 这样的需求。

重现步骤

1、当我使用 BaseMapper.update(T entity, Wrapper updateWrapper); 来实现我的需求时,走到了TableField注解这里。 2、通过@TableField(update=“my_column1 || ${et.info} ”, typeHandler=MyTypeHandler.class) 这种方式,可以重写sql片段,但typeHandler找到的确是UnkownTypeHandler,没有办法进行下一步自定义的setNonNullParameter(PreparedStatement ps,....

是不是不应该这么用,考虑到update这个用来做 my_column1 = mycolumn+1的方案的话,确实不应该找到后面的TypeHandler,那么我的需求是否可以有其他的解决方案呢。

期待回复,感谢。

报错信息

Comment From: miemieYaho

my_column1 || #{et.info,typeHandler=xxxx.MyTypeHandler}你可以这么试试,不行就没办法了

Comment From: KNMD

可以的,多谢回复!