v$sql_bind_capture 获取绑定变量信息

简介: 截取自 http://lzfhope.blog.163.com/blog/static/6363992200810206721744/ v$sql_bind_capture       对于游标中定义的每一个绑定变量都会有视图中的一行对应。

截取自

http://lzfhope.blog.163.com/blog/static/6363992200810206721744/

v$sql_bind_capture
       对于游标中定义的每一个绑定变量都会有视图中的一行对应。主要包含三个部分:指向父游标(hash_value, address)和子游标(hash_value, child_address)的信息,变量类型定义,变量的值(不包含复杂的值:LONG,LOB,和ADT类型)只有它们是位于where字句或者HAVING字句的时候才有捕捉。
       当初始化参数STATISTICS_LEVEL=BASIC的时候,不进行绑定捕捉。
       可以和V$SQLAREA on (HASH_VALUE, ADDRESS)  ,V$SQL on (HASH_VALUE, CHILD_ADDRESS),也就是指向父游标和子有效。
      举例如下:
      declare
         vname varchar2(30);
         vcount int;
         vsql varchar2(1000);
      begin
         VNAME:='EMPLOYEE';
         vsql:='select count(*) from tab where tname=:BVTEST';
         EXECUTE IMMEDIATE VSQL INTO VCOUNT USING VNAME;
         DBMS_OUTPUT.put_line(VCOUNT);
      end;         
      select * from v$sql_bind_capture  WHERE NAME=':BVTEST';  --可以看到值为EMPLOYEE
      SELECT * FROM V$SQLAREA WHERE SQL_ID='90d1g75d8gjph'  --可以更具SQL_ID查找共享池中SQL。
      select * from v$sqlarea where (hash_value,address)=
         (select hash_value,address from v$sql_bind_capture where NAME=':BVTEST') --可以查找到对应父游标
      select * from v$sql     where (hash_value,child_address)=
         (select hash_value,child_address from v$sql_bind_capture where NAME=':BVTEST') --可找到对应子游标。

      

相关文章
|
7月前
|
SQL 存储 Oracle
Oracle的PL/SQL定义变量和常量:数据的稳定与灵动
【4月更文挑战第19天】在Oracle PL/SQL中,变量和常量扮演着数据存储的关键角色。变量是可变的“魔术盒”,用于存储程序运行时的动态数据,通过`DECLARE`定义,可在循环和条件判断中体现其灵活性。常量则是不可变的“固定牌”,一旦设定值便保持不变,用`CONSTANT`声明,提供程序稳定性和易维护性。通过 `%TYPE`、`NOT NULL`等特性,可以更高效地管理和控制变量与常量,提升代码质量。善用两者,能优化PL/SQL程序的结构和性能。
|
4月前
|
XML SQL 数据格式
XML动态sql查询当前时间之前的信息报错
XML动态sql查询当前时间之前的信息报错
56 2
|
20天前
|
SQL Java
使用java在未知表字段情况下通过sql查询信息
使用java在未知表字段情况下通过sql查询信息
34 8
|
1月前
|
SQL 监控 关系型数据库
SQL语句当前及历史信息查询-performance schema的使用
本文介绍了如何使用MySQL的Performance Schema来获取SQL语句的当前和历史执行信息。Performance Schema默认在MySQL 8.0中启用,可以通过查询相关表来获取详细的SQL执行信息,包括当前执行的SQL、历史执行记录和统计汇总信息,从而快速定位和解决性能瓶颈。
|
7月前
|
SQL 存储 安全
第七章 SQL错误信息 - SQL错误代码 -400 到 -500
第七章 SQL错误信息 - SQL错误代码 -400 到 -500
145 1
|
7月前
|
SQL 存储 Java
第三章 SQL错误信息
第三章 SQL错误信息
58 1
|
3月前
|
SQL Java
使用java在未知表字段情况下通过sql查询信息
使用java在未知表字段情况下通过sql查询信息
37 1
|
7月前
|
SQL 数据库连接 索引
第四章 SQL错误信息 - SQL错误代码 -1 到 -99
第四章 SQL错误信息 - SQL错误代码 -1 到 -99
65 0
|
4月前
|
SQL 流计算
Flink SQL 在快手实践问题之由于meta信息变化导致的state向前兼容问题如何解决
Flink SQL 在快手实践问题之由于meta信息变化导致的state向前兼容问题如何解决
51 1
|
4月前
|
SQL JSON Go
Go - 基于 GORM 获取当前请求所执行的 SQL 信息
Go - 基于 GORM 获取当前请求所执行的 SQL 信息
72 3