为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:
【操作系统】:
【CPU】:
【问题描述】*:查询sqltext只能查看绑定变量显示?
怎么具体查询代入的值
做个实验,首先,在 v$sql_history 系统表中找找看是否有之前查询这个SQL的记录。如果能找到的话,记录一下后面EXEC_ID字段的值
然后,在 v$sql_binddata_history 系统表中根据 EXEC_ID 值查询,如果成功,则能得到执行这句SQL时传递的绑定参数值,只不过是以 varbinary 格式存储的,需要调用系统函数来进行解析
把查到的BINDDATA字段内容,贴到下面这个脚本里,然后执行试试看
DECLARE
V_ARGC INTEGER;
V_DATA VARBINARY := 查到的BINDDATA字段内容;
BEGIN
V_ARGC := SF_EXTRACT_BIND_DATA_NUM(V_DATA,1);
SELECT LEVEL AS IDX
,SF_EXTRACT_BIND_DATA(V_DATA,LEVEL,1) AS ARGTYPE
,SF_EXTRACT_BIND_DATA(V_DATA,LEVEL,2) AS ARGVAL
CONNECT BY LEVEL <= V_ARGC;
END;
例如:
可以配置SQL运行日志。里面会记录绑定变量的值的,查询这个文件的使用方法 sqllog.ini