您现在的位置是:主页 > news > 自己建网站免费/南宁网站快速排名提升

自己建网站免费/南宁网站快速排名提升

admin2025/4/24 11:42:16news

简介自己建网站免费,南宁网站快速排名提升,周口网站建设网络工作室,学室内设计网站模糊查询的时候使用%表示模糊位置&#xff1b;正常sql没什么问题 但是一设计到字符串拼接就出问题了 <if testcountry!null> AND #{country}%)</if>这里会提示传入了一个参数但是只找到0个占位符&#xff0c;因为‘ ’单引号直接把里面转换成了字符导致无法找到对…

自己建网站免费,南宁网站快速排名提升,周口网站建设网络工作室,学室内设计网站模糊查询的时候使用%表示模糊位置&#xff1b;正常sql没什么问题 但是一设计到字符串拼接就出问题了 <if testcountry!null> AND #{country}%)</if>这里会提示传入了一个参数但是只找到0个占位符&#xff0c;因为‘ ’单引号直接把里面转换成了字符导致无法找到对…

模糊查询的时候使用%表示模糊位置;正常sql没什么问题
但是一设计到字符串拼接就出问题了

<if test='country!=null'> AND '#{country}%')</if>

这里会提示传入了一个参数但是只找到0个占位符,因为‘ ’单引号直接把里面转换成了字符导致无法找到对应的占位符

后来改成了:

<if test='country!=null'> AND #{country}'%')</if>

这样虽然不报错,但是无论如何都搜不出数据来;

也可以使用:

<if test='country!=null'> AND '${country}%')</if>

勉强能用,但是会引发sql注入问题;

最终方案:
concat(str,str,str,......)

<if test='country!=null'> AND concat(#{country},'%')</if>

这样可以把多个字符拼接在一起,所以可以使用#{}占位而不引发sql注入问题;
问题就解决了;这样的方法也可以使用${}需要注意的是单引号要把占位部分也包裹起来;
不推荐:

<if test='country!=null'> AND concat('${country}','%')</if>