zoukankan      html  css  js  c++  java
  • 调存储过程shell

    #!/bin/ksh
    ################################################################################
    # 脚本名称       : runjob_ora_proc.sh
    # 描述           : 调用ORACLE存储过程接程序
    # 参数描述       : v_proc_name  存储过程名
    #                  v_par_date   调度日期
    #                  v_db_sid     数据库实例
    #                  v_db_name    数据库用户名
    #                  v_db_pwd     数据库密码
    #
    # 修改记录      :
    ################################################################################
    
    if [ $# -ne 5 ]
    then
        echo "Usage:sh $0 <proc_name> <par_date> <db_sid> <db_name> <db_pwd>"
        echo "   eg:sh $0 SP_SHODSB_TEST 20091218 odsbptdb shodsb shodsbpwd"
        exit 2
    fi
    
    
    # 参数设置
    v_proc_name=$1
    v_par_date=$2
    v_db_sid=$3
    v_db_name=$4
    v_db_pwd=$5
    v_logfile=${LOGDIR}/run_log/${v_par_date}/${v_proc_name}.${v_par_date}.log
    
    #建立目录
    if [ ! -d ${LOGDIR}/run_log ];then
        mkdir ${LOGDIR}/run_log
        if [ $? -ne 0 ];then
            echo "建立${LOGDIR}/run_log失败!"
            exit 9
        fi
    fi 
    
    
    if [ ! -d ${LOGDIR}/run_log/${v_par_date} ];then
        mkdir ${LOGDIR}/run_log/${v_par_date}
        if [ $? -ne 0 ];then
            echo "建立${LOGDIR}/run_log/${v_par_date}失败!"
            exit 9
        fi
    fi 
    
    
    if [ ! -d ${v_logfile} ];then
        touch ${v_logfile}
        if [ $? -ne 0 ];then
            echo "建立${v_logfile}失败!"
            exit 9
        fi
    fi 
    
    echo "-------------------------------------------------------" >>${v_logfile}
    echo `date '+%Y-%m-%d %T'` "程序开始执行..." >>${v_logfile}
    echo "v_proc_name = $v_proc_name" >>${v_logfile}
    echo "v_par_date = $v_par_date" >>${v_logfile}
    echo "v_db_sid = $v_db_sid" >>${v_logfile}
    echo "v_db_name = $v_db_name" >>${v_logfile}
    echo "v_db_pwd = ******" >>${v_logfile}
    
    sqlplus -S $v_db_name/$v_db_pwd@$v_db_sid << ! >>${v_logfile}
        set serveroutput on
        var flag number;
        exec :flag:=1
        exec SP_CALL_PROC('$v_proc_name','$v_par_date',:flag);
    exit :flag
    !
    
    if [ $? -eq 0 ]
    then
      echo `date '+%Y-%m-%d %T'` "程序成功结束..." >>${v_logfile}
      exit 0
    else
      echo `date '+%Y-%m-%d %T'` "程序执行失败..." >>${v_logfile}
      exit 1
    fi

  • 相关阅读:
    K8S入门学习
    CentOs7安装docker(第二篇)
    使用NFS时的一些问题
    linux的一些基本命令
    centOS7搭建NFS服务器
    ELK日志系统+x-pack安全验证
    如何在网页中用echarts图表插件做出静态呈现效果
    3.29——工作日志
    导航选中,背景变色效果
    网站滚动n个像素后,头部固定
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13352048.html
Copyright © 2011-2022 走看看