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

Posted

技术标签:

【中文标题】LIKE 语句中带有变量的 SQL:无效的列索引 [重复]【英文标题】:SQL with variable in LIKE statement: Invalid column Index [duplicate] 【发布时间】:2015-07-28 17:51:22 【问题描述】:

我正在使用 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】:

您需要在 setString 语句中指定通配符。

Wildcard in Prepared Statement

【讨论】:

以上是关于LIKE 语句中带有变量的 SQL:无效的列索引 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

java.sql.SQLException: 无效的列索引

java.sql.SQLException: 无效的列索引

java.sql.SQLException: 无效的列索引

java.sql.SQLException:无效的列索引

text java.sql.SQLException:无效的列索引

text java.sql.SQLException:无效的列索引