創建表

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

使用pl/sql監控PROCEDURE執行時間的更多相关文章

  1. 【转】Visual Studio單元測試小應用-測執行時間

    [转]Visual Studio單元測試小應用-測執行時間 Visual Studio的單元測試會記錄每一個測試的執行時間,如果有幾個Method要測效能,以前我會用Stopwatch,最近我都改用單 ...

  2. 在oracle RAC 环境下用 PL/SQL Developer debug procedure 出现 hang 的情况

    现象描述: 用plsql developer 连接编译procedure 的时候都很正常.一旦开始Test进入Debug模式的时候就Hang住了. 初步猜测是没有权限,可是是DBA角色呀,如果没有权限 ...

  3. GitHub for Windows 內建 Git Shell 執行時顏色所代表的意義

    在使用指令列版控的過程中,經常有機會用到 Git Shell 這套優異的 Git 版控環境,一來他使用 Windows PowerShell 為核心,其訊息顯示與輸入都支援 Unicode,比較不會有 ...

  4. PL/SQL 05 存储过程 procedure

    --存储过程(不带参数) create or replace procedure 存储过程名as  变量.常量声明;begin  代码;end; --存储过程(带输入参数) create or rep ...

  5. PL/SQL(Procedure Language & Structured Query Language)

    目前的PL/SQL包括两部分,一部分是数据库引擎部分:另一部分是可嵌入到许多产品(如C语言,JAVA语言等)工具中的独立引擎.可以将这两部分称为:数据库PL/SQL和工具PL/SQL. PL/SQL中 ...

  6. 20個命令行工具監控 Linux 系統性能

    對於每個系統管理員或網路管理員來說,每天要監控和調試 Linux 系統性能問題都是非常困難的工作.我已經有5年 Linux 管理員的工作經歷,知道如何監控系統使其保持正常運行.為此,我們編寫了對於 L ...

  7. SQL Server監控与診斷

    僅為記錄工作中遇到的問題. 1. 字符串截斷: SQL server里很多job用於運行DTS,經常會收到系統出錯警報,如: ...String ) The statement has been te ...

  8. ORACLE PL/SQL编程详解

    ORACLE PL/SQL编程详解 编程详解 SQL语言只是访问.操作数据库的语言,并不是一种具有流程控制的程序设计语言,而只有程序设计语言才能用于应用软件的开发.PL /SQL是一种高级数据库程序设 ...

  9. PL/SQL存储过程编程

    PL/SQL存储过程编程 /**author huangchaobiao *Email:huangchaobiao111@163.com */ PL/SQL存储过程编程(上) 1. Oracle应用编 ...

随机推荐

  1. SVN权限管理

    转自:http://www.cnblogs.com/xingchen/archive/2010/07/22/1782684.html /******************************** ...

  2. EXTJS 动态改变Gird 列值

      var me = this.getView('EditProProductQrcodePanel'); var grid = me.down("[name=mallQrcodeGrid] ...

  3. ubuntu安装文件比较工具Meld

    Meld是一款可视化的文件及目录对比(diff) / 合并 (merge) 工具,通过它你可以对两个或三个文件/目录进行对比,并以图形化的方式显示出它们的不同之处,同时还提供编辑及合并功能,另外还支持 ...

  4. Closest Binary Search Tree Value I & II

    Closest Binary Search Tree Value Given a non-empty binary search tree and a target value, find the v ...

  5. Fraction to Recurring Decimal

    Given two integers representing the numerator and denominator of a fraction, return the fraction in ...

  6. java 中for each语句

    [转]java foreach 使用   foreach语句是java5的新特征之一,在遍历数组.集合方面,foreach为开发人员提供了极大的方便.   foreach语句是for语句的特殊简化版本 ...

  7. 【leetcode】Merge Intervals

    Merge Intervals Given a collection of intervals, merge all overlapping intervals. For example,Given  ...

  8. poj 1010

    http://poj.org/problem?id=1010 题意:给你n种邮票的价值,到0结束,这些邮票价值有可能相同,但是形状是不同的. 还有给你m个收藏家所需要收藏的邮票的总价格.到0结束. 每 ...

  9. Failed to issue method call: Unit httpd.service failed to load: No such file or directory.

    centos7修改httpd.service后运行systemctl restart httpd.service提示 Failed to issue method call: Unit httpd.s ...

  10. Java for LeetCode 217 Contains Duplicate

    Given an array of integers, find if the array contains any duplicates. Your function should return t ...