LINUX下用SHELL脚本执行带输入输出参数的ORACLE存储过程并得到结果

LINUX下用SHELL脚本执行带输入输出参数的ORACLE存储过程并得到结果

存储过程 myproc(in_num in number,out_num out number)

sql脚本模板mysql.sql
{
var nret number;
execute :nret := 0;--初始化

call myproc(in_code,:nret)--执行存储过程,in_code会被替换掉
/
select 'retcode[' || :nret || ']retcode' from dual--显示结果
/
quit;

}

SHELL脚本mysh.sh
{
#./mysh.sh 123
cd /home/myshell

sed   "s/in_code/$1/"   mysql.sql   > mysql01.sql
#根据sql脚本模板生成实际脚本

sqlplus usr/pwd@db.my<mysql01.sql > result$1.txt
#执行sql脚本并把结果输入result$1.txt

echo ok!

}

在LINUX下执行./mysh.sh 123,生成result123.txt,myproc输出参数在'retcode['和']retcode'之间 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值