<分区>
Possible Duplicate:
How can I get the SQL of a PreparedStatement?
我制作了一个 PreparedStatement (PS) 并在其上运行一些 setString(int a,String b)。 在此之后,如何查看我的 PS 最终的样子?
<分区>
Possible Duplicate:
How can I get the SQL of a PreparedStatement?
我制作了一个 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);
关于java - 如何查看我的 PreparedStatement 的外观?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11678556/
相关文章:
java - 通过 JDBC 查询 Oracle DB 给出 null,而直接查询给出输出
java - 如何在带有 Guice 的 Spring JDBC 中使用事务
mysql - 使用 queryForObject() 方法检索计数时,JDBCTemplate 中的参数索引超出范围(1 > 参数数量,即 0)
java - Android中如何等待一个线程启动另一个线程?
java - AppCompat 相当于 "Theme.Wallpaper.NoTitleBar.Fullscreen"
java - 为什么我的缓冲图像不显示在我的 JPanel 中?
java - 只有最后一个值是从 jTable 中的数据库打印的
java - Oracle驱动在PreparedStatement中setFetchSize时出现OutOfMemoryError