PROC=$1 //把这段shell的第一个参数赋值给PROC,看样子像一个procedure的名字
echo ${PROC} //打印proc也就是第一个参数的值
..
exec ${PROC}(:pOUT); //sqlplus中执行Procedure,名字为{PROC} :pout估计为参数,看样子为输出参数
quit :pOUT; //退出sqlplus
EOF
echo ${PROC} //打印proc也就是第一个参数的值
..
exec ${PROC}(:pOUT); //sqlplus中执行Procedure,名字为{PROC} :pout估计为参数,看样子为输出参数
quit :pOUT; //退出sqlplus
EOF
解决方案 »
- 这条oracle语句报错,请大神指点。
- 求助:oracle中有没有这样一个函数,类似方差的,谢谢大家帮忙!
- 如何把long数据类型转化成char类型
- 写个触发器,当删除表中一条信息时同时删除另外一个表中ID号一样的信息
- [oracle高手救命]关于一个oracle客户端10g,访问2个异地oracle服务器,字符集不同的问题。
- ora-01031 例程不能启动
- Oracle 初学者的简单问题,如何输入表中的数据
- "set charwidth 10"为何没用?
- ORA-01461 仅可以为插入 LONG 列的 LONG 值赋值 是什么错误啊
- oracle 客户端没有sqlldr 怎么添加
- 用脚本create一批新表的问题
- 将数据库中一个用户下的所有东东复制到新用户
quit :pout; --这是固定格式么?exit行么?:pout在这一行有什么用么?
EOF又是什么意思(也是格式么?)
还有下面的这个发送报错邮件的也不知到是怎么实现的,
最好一句句的注释以下,谢谢了STATUS=$?
if [ ${STATUS} -ne 0 ]
then
路径/errmail.sh ${PROC}
exit 1
fi
exit 0
这一句表示执行sqlplus,并且sqlplus的输入就是本脚本下面的内容,直到"EOF"这行
quit :pout;
表示退出sqlplus,并将pout参数(前面通过var pout定义的)的值做为sqlplus的退出码。
STATUS=$?
表示取上一个shell命令的返回码(上一个命令就是sqlplus)
if [ ${STATUS} -ne 0 ]
是判断STATUS变量(实际上就是sqlplus的返回码)是否不为0