zoukankan      html  css  js  c++  java
  • 一个oracle的实例(包含定位错误)

    CREATE OR REPLACE PACKAGE BODY "PKG_DIM_CAPITALMODE" IS

    PROCEDURE p_dim_capitalmode
    /*************************************************************************
    *功能:
    *创建日期:20170516
    *创建人 :唐兵
    *版本号:V1.0
    *修改记录:
    ------------------------------------------------------------------------
    *源表: comm_dict
    *目标表:dim_capitalmode
    *临时表:
    *
    *
    *中间表:
    *参数:批次号 PI_BATCHNO
    * 源系统 PI_SRCSYS
    *调用:
    **************************************************************************/
    (
    pi_batchno IN NUMBER
    ,pi_srcsys IN VARCHAR2
    ) IS
    v_proc_name VARCHAR2(100);
    vn_proc_step pkg_globals.t_number; ---程序步骤
    v_errcode pkg_globals.t_number; --错误码
    v_errmsg pkg_globals.t_char4000; --错误消息内容
    BEGIN
    v_proc_name := 'PKG_DIM_CAPITALMODE';
    --?????
    MERGE INTO dim_capitalmode a
    USING (SELECT dict_code AS bk_capitalmode
    ,dict_desc AS capitalmodename
    ,dk_system_of_upd AS srcsys
    FROM comm_dict
    WHERE dict_type LIKE 'DK_CAPITALMODE') b
    ON (a.bk_capitalmode = b.bk_capitalmode)
    WHEN MATCHED THEN
    UPDATE
    SET a.capitalmodename = b.capitalmodename
    ,a.srcsys = pi_srcsys
    ,a.batchno = pi_batchno
    ,a.updatetime = SYSDATE
    WHEN NOT MATCHED THEN
    INSERT
    (bk_capitalmode
    ,capitalmodename
    ,srcsys
    ,batchno
    ,inserttime
    ,updatetime)
    VALUES
    (b.bk_capitalmode
    ,b.capitalmodename
    ,pi_srcsys
    ,pi_batchno
    ,SYSDATE
    ,SYSDATE);
    COMMIT;
    vn_proc_step := 1;
    --写运行日志,运行结束
    osp_wrt_etlrun_log(v_proc_name
    ,'R'
    ,'merge dim_capitalmode finish'
    ,'dim_capitalmode'
    ,NULL);

    EXCEPTION
    WHEN OTHERS THEN
    v_errcode := SQLCODE;
    v_errmsg := substr(SQLERRM
    ,1
    ,1000);
    --触发错误
    raise_application_error(-20040
    ,'Oracle SQL错误码:' || v_errcode || ',错误消息:' ||
    v_errmsg || ' 出错的阶段为:' || vn_proc_step);

    COMMIT;
    END p_dim_capitalmode;
    END pkg_dim_capitalmode;

  • 相关阅读:
    Idea导入tomcat源码
    SpringBoot学习 (一) Eclipse中创建新的SpringBoot项目
    Zookeeper客户端Curator使用详解
    解决老是提示找不到Mapper文件无法执行定义的方法问题!
    人工智能、机器学习、深度学习三者之间的关系
    java5增加对https的支持
    Spring静态注入的三种方式
    Thrift入门及Java实例演示【转】
    activeMQ 学习
    python中 import 和from ... import 的区别
  • 原文地址:https://www.cnblogs.com/tangbinghaochi/p/6899920.html
Copyright © 2011-2022 走看看