Oracle捞取系统未采用绑定变量sql的语句

绑定变量目的:减少硬解析,增加sql语句的共享性,避免sql注入,降低数据被盗风险。   
捞取系统未采用绑定变量sql的语句如下:

 

 1 with force_mathces as
 2  (select l.force_matching_signature mathces,
 3           max(l.sql_id || l.child_number) max_sql_child,
 4           dense_rank() over(order by count(*) desc) ranking,count(*) times 
 5      from v$sql l
 6     where l.force_matching_signature <> 0
 7       and l.parsing_schema_name <> 'SYS'
 8     group by l.force_matching_signature
 9    having count(*) > 10)
10  select v.sql_id, v.sql_text, v.parsing_schema_name, fm.ranking,fm.times
11    from force_mathces fm, v$sql v
12   where fm.max_sql_child = (v.sql_id || v.child_number)
13     and fm.ranking <= 50
14   order by fm.ranking;

 

posted @ 2021-07-15 15:48  lazycn  阅读(142)  评论(0编辑  收藏  举报