【问题标题】:How to print used SQL query when using PreparedStatement (JDBC)使用 PreparedStatement (JDBC) 时如何打印使用过的 SQL 查询
【发布时间】:2012-03-15 18:44:04
【问题描述】:

我在我的 Java 程序中使用了 PreparedStatement。我需要调试 SQL 查询,因为它不能正常工作。

是否可以打印已插入值的已用 SQL 语句

例如在 PreparedStatement 中:

select * from table where a=?

然后我设置了?

我可以打印使用的SQL吗,例如:

从 a=1 的表中选择 *

【问题讨论】:

标签: java mysql jdbc


【解决方案1】:

java.sql.PreparedStatement 接口本身无法做到这一点;这取决于您的数据库供应商的实施。

但你很幸运; MySQL 驱动程序允许您使用它的toString 实现来做到这一点:

http://www.avajava.com/tutorials/lessons/how-do-i-display-a-prepared-statement-with-bind-variables-using-mysql.html

您需要注意,使用此特定于供应商的功能会将您的代码绑定到 MySQL。不更改代码就无法更改数据库。

【讨论】:

  • 谢谢...没关系,我只是将它用于调试目的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-09
  • 1970-01-01
  • 1970-01-01
  • 2016-09-11
  • 2021-12-12
  • 2020-12-28
相关资源
最近更新 更多