ITPub博客

首页 > 数据库 > Oracle > [20150803]toad 12版本1个小变化.txt

[20150803]toad 12版本1个小变化.txt

原创 Oracle 作者:lfree 时间:2015-08-03 09:56:29 0 删除 编辑

[20150803]toad 12版本1个小变化.txt

--昨天在使用toad12.0.061时,发现1个小小的变化关于sql_id的。

--可以参考:[20120327]toad与sqlplus下执行sql语句的一个细节.txt
http://blog.itpub.net/267265/viewspace-719592/

--而现在的版本呢?

SCOTT@test> alter system flush shared_pool;
System altered.

--在toad下执行如下:
select /*+ zzzz */ * from dept where deptno=10;
select /*+ zzzz */ * from dept where deptno=10 ;
select /*+ zzzz */ * from dept where deptno=10        ;


SELECT sql_id, sql_text, length(sql_text) n10,child_number, plan_hash_value, executions, is_bind_sensitive, is_bind_aware, is_shareable
FROM v$sql
WHERE sql_text LIKE '%zzzz%' AND sql_text NOT LIKE '%sql_text%';

SQL_ID        SQL_TEXT                                                                       N10 CHILD_NUMBER PLAN_HASH_VALUE EXECUTIONS I I I
------------- ------------------------------------------------------------ --------------------- ------------ --------------- ---------- - - -
96xs9w5bcxzkb select /*+ zzzz */ * from dept where deptno=10                                  46            0      2852011669          3 N N Y

--length(sql_text)=46,不再像9.6.0.27.那样,在结尾处补1个空格。

--可以在sqlplus验证看看:

SCOTT@test> select /*+ zzzz */ * from dept where deptno=10;
    DEPTNO DNAME          LOC
---------- -------------- -------------
        10 ACCOUNTING     NEW YORK

SCOTT@test> @dpc '' ''
PLAN_TABLE_OUTPUT
-------------------------------------
SQL_ID  96xs9w5bcxzkb, child number 0
-------------------------------------
select /*+ zzzz */ * from dept where deptno=10
Plan hash value: 2852011669
----------------------------------------------------------------------------------------
| Id  | Operation                   | Name    | E-Rows |E-Bytes| Cost (%CPU)| E-Time   |
----------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT            |         |        |       |     1 (100)|          |
|   1 |  TABLE ACCESS BY INDEX ROWID| DEPT    |      1 |    20 |     1   (0)| 00:00:01 |
|*  2 |   INDEX UNIQUE SCAN         | PK_DEPT |      1 |       |     0   (0)|          |
----------------------------------------------------------------------------------------
Query Block Name / Object Alias (identified by operation id):
-------------------------------------------------------------
   1 - SEL$1 / DEPT@SEL$1
   2 - SEL$1 / DEPT@SEL$1
Predicate Information (identified by operation id):
---------------------------------------------------
   2 - access("DEPTNO"=10)

--可以发现sql_id= '96xs9w5bcxzkb'.没有变化。

SELECT sql_id, sql_text, length(sql_text) n10,child_number, plan_hash_value, executions, is_bind_sensitive, is_bind_aware, is_shareable
FROM v$sql
WHERE sql_text LIKE '%zzzz%' AND sql_text NOT LIKE '%sql_text%';

SQL_ID        SQL_TEXT                                                                       N10 CHILD_NUMBER PLAN_HASH_VALUE EXECUTIONS I I I
------------- ------------------------------------------------------------ --------------------- ------------ --------------- ---------- - - -
96xs9w5bcxzkb select /*+ zzzz */ * from dept where deptno=10                                  46            0      2852011669          4 N N Y

--EXECUTIONS =4 ,也说明这种变化。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/267265/viewspace-1760071/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
熟悉oracle相关技术,擅长sql优化,rman备份与恢复,熟悉linux shell编程。

注册时间:2008-01-03

  • 博文量
    4006
  • 访问量
    7971604