java.sql.SQLSyntaxErrorException: ORA-00904: "**": 标识符无效

Oracle的模糊查询


<!-- oracle -->

<select id="searchUserBySearchName" parameterType="java.lang.String" resultType="com.urm.entity.User">

 select * from t_user where user_name like CONCAT('%',#{search_name},'%')

</select>

<!-- 或者 -->

<select id="searchUserBySearchName" parameterType="java.lang.String" resultType="com.urm.entity.User">

 select * from t_user where user_name like '%'||#{search_name}||'%'

</select>

按道理说应该没问题,参考了网上很多文章 都说是逗号问题等等 但是感觉自己的情况不一样



JSBH为 查询的字段


select  <include refid="attr"/> from JG_JXRWB where XN=#{xn} and XQ=#{xq} and JSBH like  ‘%’||#{jsbh}||‘%’

java.sql.SQLSyntaxErrorException: ORA-00904: &quot;**&quot;: 标识符无效

尝试改为:


select  <include refid="attr"/> from JG_JXRWB where XN=#{xn} and XQ=#{xq} and JSBH like  CONCAT(CONCAT('%',#{jsbh}), '%')




还是有问题  



在阿里云服务器上都可以



最终发现了原因:


其实是实际的表结构和 阿里云的有出入


巨坑啊,浪费了大把时间

————————————————

版权声明:本文为CSDN博主「明明如月学长」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/w605283073/article/details/50518094

上一篇:中国电信10G PON演进研究成果卓著:为现网升级铺平道路 加速千兆时代到来


下一篇:手把手教你怎么Springboot项目部署到阿里云教程(2)-安装java web开发环境jdk和Tomcat[小白篇]