可能是重复问题:
如何获取PreparedStatement的SQL?
我创建了一个PreparedStatement(PS),并在它上面运行一些setString(int a,String b)。然后,我该如何查看我的PS最终的样子呢?
可能是重复问题:
如何获取PreparedStatement的SQL?
我创建了一个PreparedStatement(PS),并在它上面运行一些setString(int a,String b)。然后,我该如何查看我的PS最终的样子呢?
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);
System.out.println(pstmt);
打印语句。 - pafau k.