LIKE语句中带有变量的SQL:无效的列索引

时间:2015-05-17 02:09:51

标签: sql oracle variables sql-like setstring

我正在使用Oracle。

PreparedStatement pstmt = con.prepareStatement("SELECT * FROM BookLoanInfo WHERE title LIKE '%?%' ORDER BY bid");
ResultSet rs;
String bookstring = scan.nextLine();
try{
    pstmt.clearParameters();
    pstmt.setString(1, bookstring);
    rs = pstmt.executeQuery();

实际问题似乎与setString或我输入查询的方式有关。

然而,这会产生无效的列索引。

1 个答案:

答案 0 :(得分:0)

您需要将通配符指定为setString声明的一部分。

Wildcard in Prepared Statement