【问题标题】:Get the Query Fired using PreparedStatement with the bind variables on Oracle Database [duplicate]使用 PreparedStatement 和 Oracle 数据库上的绑定变量触发查询 [重复]
【发布时间】:2013-01-21 06:41:34
【问题描述】:

编辑:我正在使用 Oracle

我正在使用 PreparedStatement 编写一个动态查询,类似于这样

String query="UPDATE <tablename> SET 
        column1=?,column2=?,.....,coulmn7=? WHERE "
        + "column5=TO_DATE(?,'DD/MM/YYYY') AND "
        + "column6=? AND "
        ....
        + "column7=?";

PreparedStatement prest2=con2.PrepareThisStatement(query);

while(true){

   //loop through and bind values
   if(end of list) break;
}
 prest2.executeUpdate(query);

我需要跟踪在数据库中触发的查询并将它们记录在表中。

但是当使用PreparedStatement 时,我无法获取整个查询,也无法将值存储在单独的字段中。有没有办法获得在数据库中触发的最终查询。

【问题讨论】:

  • 是的。完全重复。
  • @PradeepSimha:已编辑帖子请参阅,在使用 Oracle 时不要打印PreparedStatement 的建议。我也不想使用日志记录 API。
  • @SangeetMenon,据我所知,JDBC 中没有实现相同功能的工具。据我所知,它只适用于 MySQL 驱动程序。

标签: java sql jdbc prepared-statement


【解决方案1】:

你可以,使用 1prest2.toString();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-04-29
    • 2021-08-02
    • 2018-12-15
    • 1970-01-01
    • 2013-01-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多