带有绑定变量的Oracle SQL跟踪

时间:2010-07-05 07:35:07

标签: sql oracle trace bind-variables

如何使用从跟踪文件替换的绑定变量获取完整的SQL语句?

设置

ALTER SESSION SET EVENTS '10046 trace name context forever, level 4';
ALTER SESSION SET sql_trace = true;

生成的跟踪文件包含带有绑定变量的SQL查询和单独“BINDS”部分中绑定变量的解析。如果有几个绑定变量,这很好。当我有100多个绑定变量时,它不是很有用。

Tkprof处理跟踪文件,但不支持绑定变量。

是否可以使用替换的绑定变量获取完整的SQL语句,以便我可以轻松地复制粘贴并重新执行它?是否有一个免费工具可以处理我的跟踪文件并输出完整的SQL语句?

我也很欣赏没有使用v $ sql和朋友进行SQL跟踪的解决方案。

1 个答案:

答案 0 :(得分:3)

您需要使用Oracle跟踪分析器而不是tkprof来提取绑定变量的实际值。 http://www.rampant-books.com/art_moore_oracle_trace_analyzer_trcanlzr_sql.htm

跟踪分析器将来最终将取代tkprof。