DBMS_PROFILER 存储过程中的疑惑?

今天闲瑕之作,在于DBMS_PROFILER做存储过程优化研究,在使用过程发出许多问题不解

测试代码
Connected to Oracle9i Enterprise Edition Release 9.2.0.8.0
Connected as DB_SSGLY

SQL> CREATE TABLE a (i VARCHAR2(100));

Table created

SQL>
SQL> create or replace procedure TEST_PROFILER2 AS
  2  BEGIN
  3  DBMS_PROFILER.START_PROFILER('123');
  4  --T_DBMS_PROFILER_PG.T_T1;
  5  FOR I IN 1 .. 1000 LOOP
  6  INSERT INTO A VALUES (I || '');
  7  
  8  END LOOP;
  9  COMMIT;
10  DBMS_PROFILER.STOP_PROFILER();
11  END;
12  /

Procedure created

SQL> set timing on
SQL> begin
  2  TEST_PROFILER2;
  3  end;
  4  /

PL/SQL procedure successfully completed

Executed in 0.063 seconds

可以看使用TEST_PROFILER2执行用时0.063法。我使用pl/sql工具的"测试窗口"查看概览图,发现名“123”
显示单元总时间为:18.395秒,实在疑惑不解?这两个统计时间相差太大?
所以在此发贴,寻找答案,望牛人解惑,感激,如图:
DBMS_PROFILER 存储过程中的疑惑?_第1张图片
20110616-截图 3.jpg

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

转载于:http://blog.itpub.net/13824386/viewspace-700079/

你可能感兴趣的:(DBMS_PROFILER 存储过程中的疑惑?)