码迷,mamicode.com
首页 > 数据库 > 详细

Oracle万能存储过程

时间:2014-10-27 07:07:32      阅读:205      评论:0      收藏:0      [点我收藏+]

标签:oracle 存储过程 脚本

 

create or replace procedure proc_data_check is

    --定义变量

    V_LOCK_ID            INTEGER;

    v_lockhandle         VARCHAR(128);

    V_RELEASE_ID         INTEGER;

    --定义出错异常信息编码

    v_error_code VARCHAR2(10) := ‘‘;

    --定义错误异常描述信息

    v_error_message VARCHAR2(1000) := ‘‘;

    cursor check_orgs is

    select org_code, org_name from check_org;

 begin

  DBMS_LOCK.ALLOCATE_UNIQUE(‘PROC_DATA_CHECK‘, v_lockhandle, 86400);

  V_LOCK_ID := DBMS_LOCK.REQUEST(v_lockhandle, DBMS_LOCK.X_MODE, 0, FALSE);

  if (V_LOCK_ID = 0) then

  for check_org in check_orgs loop

    null;

  end loop;

 

  V_RELEASE_ID := dbms_lock.release(v_lockhandle);

  COMMIT;

  end if;

  commit;

EXCEPTION

  WHEN OTHERS THEN

    V_RELEASE_ID := dbms_lock.release(v_lockhandle);

    --得到异常编码

    V_ERROR_CODE := SQLCODE;

    --得到异常描述信息

    V_ERROR_MESSAGE := SQLERRM;

    --将异常信息维护到异常表中

end proc_data_check;

 

本文出自 “高辉博客” 博客,转载请与作者联系!

Oracle万能存储过程

标签:oracle 存储过程 脚本

原文地址:http://qjcghwsj.blog.51cto.com/3860557/1568185

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!