lr数据库参数化取数:The query result is empty and same is the parameter file问题原因

时间:2021-07-25 08:26:32

lr数据库参数化取数:The query result is empty and same is the parameter file问题原因

出现这个问题的原因:

是因为我们的查询结果存在中文

如果查询结果没有中文,显示正常

解决办法:

新建一个数据源:

lr数据库参数化取数:The query result is empty and same is the parameter file问题原因

lr数据库参数化取数:The query result is empty and same is the parameter file问题原因

重新再选择这个数据源,再次查询:

lr数据库参数化取数:The query result is empty and same is the parameter file问题原因

说明不是连接字符串的问题或者是mysql驱动的问题

问题2:Data Retriever failed to execute query解决方法

lr数据库参数化取数:The query result is empty and same is the parameter file问题原因

问题现象:

所有的环境都一样,仅仅只是两条sql语句不一样:

select ProductName from SP_Product where ProductName='力士恒久嫩肤娇肤香皂115g'  这一句执行:

lr数据库参数化取数:The query result is empty and same is the parameter file问题原因

select ProductName from SP_Product where ProductName='心味果园 200g盐焗青豆'   该sql执行报上说错误

lr数据库参数化取数:The query result is empty and same is the parameter file问题原因

解决思路:

  1. 先要确保这条sql可以查询到数据

  2. 确保数据库驱动和普通汉字格式的编码都没问题

  3. 尝试其他sql语句,例如带有空格的,汉字的,数字,英文的尝试

  4. 最后如果还是没有解决,可能是某些字的中文编码偏差导致的,mysql的编码比一般的范围小

select ProductName from SP_Product where ProductName='心味果园 200g盐焗青豆'

select ProductName from SP_Product where ProductName like '心味果%'

select ProductName from SP_Product where ProductName like '心味果园 200g%'

一个字一个字的尝试:

lr数据库参数化取数:The query result is empty and same is the parameter file问题原因

总结:对于是某些字的中文编码偏差导致的,用like代替绕过

问题解决完毕: