龙空技术网

Oracle 硬解析与软解析:不能使用软解析的情形

重庆思庄 102

前言:

现时同学们对“oracle硬解析的原因”可能比较注意,我们都需要了解一些“oracle硬解析的原因”的相关资讯。那么小编在网络上搜集了一些有关“oracle硬解析的原因””的相关文章,希望我们能喜欢,小伙伴们一起来了解一下吧!

不能使用软解析的情形

1.下面的三个查询语句,不能使用相同的共享SQL区。尽管查询的表对象使用了大小写,但Oracle为其生成了不同的执行计划

select * from emp;

select * from Emp;

select * from EMP;

2.类似的情况,下面的查询中,尽管其where子句empno的值不同,Oracle同样为其生成了不同的执行计划

select * from emp where empno=7369

select * from emp where empno=7788

3.在判断是否使用硬解析时,所参照的对象及schema应该是相同的,如果对象相同,而schema不同,则需要使用硬解析,生成不同的执行计划

sys@ASMDB> select owner,table_name from dba_tables where table_name like 'TB_OBJ%';

OWNER TABLE_NAME

------------------------------ ------------------------------

USR1 TB_OBJ --两个对象的名字相同,当所有者不同

SCOTT TB_OBJ

usr1@ASMDB> select * from tb_obj;

scott@ASMDB> select * from tb_obj; --此时两者都需要使用硬解析以及走不同的执行计划

标签: #oracle硬解析的原因 #oracle 硬解析 #oracle硬解析和软解析的区别 #oracle软解析和软软解析