【问题标题】:how to set placeholders in like statement query如何在like语句查询中设置占位符
【发布时间】:2011-11-27 17:23:46
【问题描述】:

我正在使用具有 like 语句的 SQL 创建 PreparedStatement,并且我正在使用 setString() 方法设置占位符,但它不会给出任何错误或获取任何记录。当我通过在类似语句中设置参数直接在数据库中运行查询时,我会得到结果,所以我认为可能有任何其他方法可以将占位符放入 sql 中,我正在执行如下操作:

select name from employee where name like ?

我也试过了:

select name from employee where name like (?)

并使用setString()方法设置参数,但我没有得到任何结果。

请帮忙看看有什么问题

【问题讨论】:

标签: java jdbc prepared-statement


【解决方案1】:

这是来自 API 的示例:

PreparedStatement pstmt = con.prepareStatement("UPDATE EMPLOYEES
                                     SET SALARY = ? WHERE ID = ?");
   // set the first (?)
   pstmt.setBigDecimal(1, 153833.00)
   // set the second (?)
   pstmt.setInt(2, 110592)

您可以在http://download.oracle.com/javase/1.4.2/docs/api/java/sql/PreparedStatement.html中看到更多信息

【讨论】:

  • like 语句是否也一样
【解决方案2】:

这是你第一次使用它的方式。如果您需要另一篇解释这一点的帖子,请参阅:

Cannot use a LIKE query in a JDBC PreparedStatement?

【讨论】:

    猜你喜欢
    • 2021-11-25
    • 1970-01-01
    • 2019-11-15
    • 2021-07-12
    • 1970-01-01
    • 2012-12-25
    • 2014-06-15
    • 2014-09-01
    • 1970-01-01
    相关资源
    最近更新 更多