JDBC模糊查询参数的注入的注意点


笔者刚开始是这样写sql语句的
String sql="SELECT * FROM bookBasicInfo,bookTypeInfo WHERE
    bookBasicInfo.BelongType=bookTypeInfo.BookTypeID
        AND bookBasicInfo.bookName like %?%";
采用参数注入
ps.setString(1,  bookName);
但是在执行的过程中,java跑出如下异常
java.sql.SQLException: ORA-00911: 无效字符

所以,对于这样的模糊查询的注入与一般的参数注入有很大的不同
于是,笔者改成如下形式注入,就成功运行出结果了。
String sql="SELECT * FROM bookBasicInfo,bookTypeInfo WHERE
    bookBasicInfo.BelongType=bookTypeInfo.BookTypeID
        AND bookBasicInfo.bookName like ?";
ps.setString(1,  "%"+bookName+"%");


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM