筆者剛開始是這樣寫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+"%");