【问题标题】:PreparedStatement with sql comment带 sql 注释的 PreparedStatement
【发布时间】:2014-08-05 02:07:23
【问题描述】:

我可以在 java 中的 PreparedStatement 的注释中包含参数吗? 类似的东西 -

PreparedStatement stmnt = con.prepareStatement("/*blah = ? */ UPDATE TBL SET col1 = ? ")

我试过了,还是不行,有没有其他办法。谢谢。

【问题讨论】:

  • 我的问题是为什么?数据库不会关心
  • 实际上有一个发布者-订阅者系统,它读取 mysql 事务日志并将更新推送给订阅者。该系统只了解添加到 sql 中的 cmets。我正在努力添加这些 cmets,以便发布者可以工作。
  • 这意味着你所有的sql都会有Java注释或sql注释语法?
  • sql 将具有 sql 注释语法。这里sql注释和java注释语法相同,都是/* COMMENT */
  • @RishiKeshDwivedi 你试过没有问号吗? PreparedStatement 会将其解释为参数。

标签: java sql


【解决方案1】:

您可以使用 String.format() 添加参数。

String myBlah = "BlahBlah!";    
PreparedStatement stmnt = con.prepareStatement(String.format("/*blah = %s */ UPDATE TBL SET col1 = ? ",myBlah))

这将打印变量 myBlah 代替 %s

【讨论】:

    猜你喜欢
    • 2016-12-27
    • 2014-05-30
    • 2016-11-16
    • 1970-01-01
    • 1970-01-01
    • 2011-05-18
    • 2012-11-13
    • 1970-01-01
    • 2016-07-19
    相关资源
    最近更新 更多