db2查询执行的sql语句

2024-11-24 04:30:19
推荐回答(3个)
回答1:

楼主的 Java 程序, 是 B/S 的 还是 C/S 的

B/S 的, 尝试在 执行 ibatis 的 插入之前 System.out 一下 那10个对象。
或者 写到 日志文件里面。
如果类 写了比较的方法的话,就比较一下 第1个 和 第2个
确定一下, 是否是 插入不同的数据。

C/S 的,设置一下 断点, 到时候,单步跟踪进去。

如果以上情况都不见效, 那么尝试使用 P6Spy

P6Spy 是一个可以用来在应用程序中拦截和修改数据操作语句的开源框架.

通过P6Spy 我们可以对SQL语句进行拦截,相当于一个SQL语句的记录器,这样我们可以用它来作相关的分析,比如性能分析。

弄hibernate时,想显示sql语句,可以设置show_sql为true来达到这个目的,但是参数值全PreparedStatement一样,用?来代替的。
用p6spy可以达到显示的那些参数原值的目的,但可读性差。可以利用SQL Profiler来处理这个事情。

回答2:

select tabname from syscat.tables where tabschema = current schema ;// 获取当前模式下面的所有用户表

如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!

vaela

回答3:

Prepare的语句是看不到参数值的。最好的方法就是在代码里将你的语句Print出来