HQL即便在执行createNativeSQL的时候,碰到::varchar转类型的表达式的时候,也会把::varchar拆分红:varchar 看成输入变量。ast
有两种解决方法:1是找到HQL的转义字符,使HQL不把::varchar拆分红变量输入;2 替换nativeSQL的转换形式,避免:的使用。变量
网上大部分是对like %%进行处理的文章。这个不适用于我如今碰到的状况。方法
解决方案:对NativeSQL进行修改。转类型的时候,使用cast(numberOfMoney as varchar),进行处理,避免HQL的赋值问题解决方案