如何在Java Prepared Statements中打印绑定变量。

时间:2012-12-07 07:28:31

标签: java database

假设我的查询是这样的,这里conn是连接对象:

String countrycode=91;//it is dynamic in my case
String query = "update tblemployeedata set countrycode='?';
PreparedStatement pstmtUpdate = conn.prepareStatement(query);
pstmtUpdate.setString(1,countrycode);

现在设置上面的国家/地区代码后,我希望看到我的实际查询形成为

update tblemployeedata set countrycode='91';

pstmtUpdate.executeUpdate();

2 个答案:

答案 0 :(得分:0)

您可以使用pstmtUpdate.toString()方法查看在预准备语句中设置参数后所做的实际查询。

答案 1 :(得分:-2)

您可以通过以下方式获取查询的值。

Class stmt1 = pstmtUpdate.getClass();
java.lang.reflect.Field mem = stmt1.getField("sql");
String value= (String)mem.get(pstmt);

希望这会对你有所帮助