我制作一个PreparedStatement(PS)并在其上运行一些setString(int a,String b)。 在此之后,我怎么看到我的PS最终看起来像什么?
答案 0 :(得分:4)
如果我理解你,你会想要像:
PreparedStatement pstmt =
connection.prepareStatement("insert into table tab(col) values(?)");
pstmt.setString(1, "my string value");
然后你想要看到一个字符串:
"insert into table(col) values('my string value')"
我的意思是否正确?
如果是这样,我认为你做不到。我认为语句是在没有参数值的情况下预编译的,并且它们是分开保存的,因此您可以重用具有不同参数的语句。
您可以做的是检索参数元数据,如下所示:
ParameterMetaData pmd = pstmt.getParameterMetaData();
然后调用类似的东西:
pmd.getParameterCount();
pmd.getParameterClassName(1);
pmd.getParameterType(1);