zoukankan      html  css  js  c++  java
  • 使用pl/sql監控PROCEDURE執行時間

    創建表

    CREATE TABLE PROCESS_TIMING_LOG
    (
      PROCESS_NAME       VARCHAR2(50 BYTE),
      EXECUTION_DATE     DATE,
      RECORDS_PROCESSED  NUMBER,
      ELAPSED_TIME_SEC   NUMBER
    )

    創建Procedure

    CREATE OR REPLACE PROCEDURE SCOTT.update_salary
    AS
       CURSOR cur_employee
       IS
          SELECT empno, sal, ROWID FROM EMPLOYEE_TEST;

       lv_new_salary_num   NUMBER;
       lv_count_num        PLS_INTEGER := 0;
       lv_start_time_num   PLS_INTEGER;
       lv_total_time_num   NUMBER;
    BEGIN
       lv_start_time_num := DBMS_UTILITY.GET_TIME;

       FOR cur_employee_rec IN cur_employee
       LOOP
          lv_count_num := lv_count_num + 1;
          lv_new_salary_num := cur_employee_rec.sal;

          UPDATE employee_test
             SET sal= lv_new_salary_num
           WHERE ROWID = cur_employee_rec.ROWID;
       END LOOP;

       lv_total_time_num := (DBMS_UTILITY.GET_TIME - lv_start_time_num) / 100;

       INSERT INTO process_timing_log (process_name,
                                       execution_date,
                                       records_processed,
                                       elapsed_time_sec)
            VALUES ('update_salary',
                    SYSDATE,
                    lv_count_num,
                    lv_total_time_num);

       COMMIT;
    END update_salary;
    /
    運行結果

    PROCESS_NAME,EXECUTION_DATE,RECORDS_PROCESSED,ELAPSED_TIME_SEC
    update_salary,2016/8/1 下午 02:57:08,4257554,532.28

    不必太糾結于當下,也不必太憂慮未來
  • 相关阅读:
    1-4个人博客
    大二上学期软件工程概论学习进度表(第十六周)
    软件工程概论个人总结
    python+selenium 定位元素的主要方法
    python+selenium 元素定位--iframe
    返回字符串中出现最多的字符
    TestNG中 ITestListener 的使用
    对数组对象按某些属性排序方法
    OSX 10.11 cocoapods安装命令: sudo gem install -n /usr/local/bin cocoapods
    IOS启动页设置适应ios8/9
  • 原文地址:https://www.cnblogs.com/guilingyang/p/5727009.html
Copyright © 2011-2022 走看看