开发者

Issues with a query on the AS/400 with LIKE clause

开发者 https://www.devze.com 2023-03-21 18:14 出处:网络
We are using Hibernate to connect to AS/400. We are having issues with a query on the AS/400 with the LIKE clause.

We are using Hibernate to connect to AS/400. We are having issues with a query on the AS/400 with the LIKE clause.

The following error is shown:

java.sql.SQLException: [SQL0131] Operands of LIKE no开发者_JAVA技巧t compatible or not valid

My query is its auto generated by Hibernate:

select tab_parame0_.C1IMCD as C1_560_, tab_parame0_.C1NINB as C2_560_,
tab_parame0_.C1JXCD as C3_560_, tab_parame0_.C1HLTX as C4_560_, tab_parame0_.C1HMTX as C5_560_,
tab_parame0_.C1HDST as C6_560_, tab_parame0_.C1NGNB as C7_560_, tab_parame0_.C1NJNB as C8_560_,
tab_parame0_.C1NFNB as C9_560_, tab_parame0_.C1NHNB as C10_560_, tab_parame0_.C1HCST as C11_560_
from RYC1REP tab_parame0_
where lower(tab_parame0_.C1HLTX) like lower(?)
order by tab_parame0_.C1IMCD asc
fetch first 10 rows only


SQL0131 indicates a type mismatch.

What datatype is tab_parame0_.C1HLTX? What datatype is your query parameter?

Please include your HQL/JPQL query source code for comparison.

You may have to set up an SQL trace to see exactly what the AS/400 is receiving.

See How do I obtain trace information from my Java program using the Toolbox?


I recommend you change LIKE LOWER(:parameter) to LIKE :parameter in your source query and use .toLowerCase() when you set the parameter and see how that works.

0

精彩评论

暂无评论...
验证码 换一张
取 消