SHELL调用存储过程

王朝学院·作者佚名  2016-05-27  
宽屏版  字体: 小 | 中 | 大 | 超大  

SHELL调用存储过程1、测试用例

#!/bin/sh #日期变量可设成传入参数 #exec_date=`date +"%Y%m%d"`

# -S 设置无提示模式, 该模式隐藏命令的 SQL*Plus 标帜, 提示和回显的显示 sqlplus -S "scott/Oracle" <<! >/dev/null declare --声明变量 i_current_date date; v_output varchar2(20):='OK'; v_descmg  varchar2(20):='OK'; begin --日期赋值 i_current_date :=to_date('2014-05-18','yyyy-mm-dd'); --执行过程     pkg_sql_PRoc.remove_data(i_acctdt=> i_current_date,                                                       o_output => v_output,                                                      o_descmg => v_descmg); end; / exit; !

2、将变量进程参数化

#!/bin/sh #日期变量可设成传入参数或者使用如下方式 exec_date=`date +"%Y%m%d"` #数据库用户变量也可以传入 dbuser=scott dbpasswd=oracle #过程名称初始化 proc_name="pkg_sql_proc.remove_data" #sqlplus声明 sql_stmt=`sqlplus -S "$dbuser/$dbpasswd" <<! --修改session日期格式 alter session set nls_date_format='yyyy-mm-dd'; declare     v_output varchar2(20):='OK';     v_descmg  varchar2(20):='OK'; begin     --日期转换     i_current_date :=to_date($exec_date,'yyyymmdd');     $proc_name(i_current_date, v_output, v_descmg); end; / !`

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有