dba_outlines里的signature理解

官方文档里的解释:

SIGNATURE RAW(16)  Signature uniquely identifying theoutline SQL text

在11.2.0.4及10.2.0.5里测试,该signature是忽略sql的大小写及每个单词之间多余的空格。

(测试方式如下:

SQL> alter session set create_stored_outlines =test;

SQL> select * from DEPT;

Sql>select *  from dept;

其实只生成了一个对应select * from DEPT语句的outline。

Select name,signature from user_outlines where category=’TEST’;

 

以下Oracle 文档里也解释,v$sql和dba_oulines里面也没有将两个view相互连接起来的栏位。

How To Match a SQL Statement to a Stored Outline (文档 ID 743312.1)

OUTLINE其实是存于表outline.ol$,上面有两个unique key,分别是 (name)及(signature,category)从这里可以看出一个category里面对于同一句sql只能有一个outline。

可以使用sys.outln_edit_pkg.generate_signature(l_sql_text,l_sql_sig);​生成signature

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值