shell脚本操作oracle

#! /usr/bin/ksh
DBPWD=`GetDBPwd ${DBUSER}`
if [ $? -ne 0 -o -z "${DBPWD}" ]
then
        echo "Get DB PWD ERROR,DB USER is [${DBUSER}]"
        exit 1
fi


exp ${DBUSER}/${DBPWD}@${DBSID} file=20161104db_chg.dmp tables=table1 table2 table3
if [ $? != 0 ];
then
        echo "PLKHMXB备份数据失败"
        exit 1;
fi


sqlplus ${DBUSER}/${DBPWD}@${DBSID} <<!
spool select_zh_djlsh.log
set timi on
set time on
set line 1000


/* 更新语句 */


spool off
quit;
!


printf " 请确认是否继续执行(Y/N)"
read key
echo $key


while [ 1 -eq 1 ]
do
if [ "$key" = "Y" ] ;
then
echo "继续处理"
break;
elif [ "$key" = "N" ] ;
then
echo " 取消本次操作,退出处理"
exit 1;
else
printf " 输入有误 ,请重新输入(Y/N)"
read key
echo $key
fi
done


sqlplus ${DBUSER}/${DBPWD}@${DBSID} <<!
spool update_zh_djlsh.log
set timi on
set time on
set line 1000


/* 更新语句 */
        
commit;


spool off
quit;
!


printf " 请确认是否继续执行(Y/N)"
read key
echo $key


while [ 1 -eq 1 ]
do
if [ "$key" = "Y" ] ;
then
echo "继续处理"
break;
elif [ "$key" = "N" ] ;
then
echo " 取消本次操作,退出处理"
exit 1;
else
printf " 输入有误 ,请重新输入(Y/N)"
read key
echo $key
fi
done


sqlplus ${DBUSER}/${DBPWD}@${DBSID} <<!
spool select_zh_djlsh_result.log
set timi on
set time on
set line 1000


/* 更新语句 */


spool off
quit;
!


printf " 请确认是否继续执行(Y/N)"
read key
echo $key


while [ 1 -eq 1 ]
do
if [ "$key" = "Y" ] ;
then
echo "继续处理"
break;
elif [ "$key" = "N" ] ;
then
echo " 取消本次操作,退出处理"
exit 1;
else
printf " 输入有误 ,请重新输入(Y/N)"
read key
echo $key
fi
done


sqlplus ${DBUSER}/${DBPWD}@${DBSID} <<!
spool select_khzk_info.log
set timi on
set time on
set line 1000




/* 更新语句 */


spool off
quit;
!


printf " 请确认是否继续执行(Y/N)"
read key
echo $key


while [ 1 -eq 1 ]
do
if [ "$key" = "Y" ] ;
then
echo "继续处理"
break;
elif [ "$key" = "N" ] ;
then
echo " 取消本次操作,退出处理"
exit 1;
else
printf " 输入有误 ,请重新输入(Y/N)"
read key
echo $key
fi
done


sqlplus ${DBUSER}/${DBPWD}@${DBSID} <<!
spool update_khzk_info.log
set timi on
set time on
set line 1000




/* 更新语句 */
commit;


spool off
quit;
!


printf " 请确认是否继续执行(Y/N)"
read key
echo $key


while [ 1 -eq 1 ]
do
if [ "$key" = "Y" ] ;
then
echo "继续处理"
break;
elif [ "$key" = "N" ] ;
then
echo " 取消本次操作,退出处理"
exit 1;
else
printf " 输入有误 ,请重新输入(Y/N)"
read key
echo $key
fi
done


sqlplus ${DBUSER}/${DBPWD}@${DBSID} <<!
spool update_zh_djlsh.log
set timi on
set time on
set line 1000


SELECT * FROM T_ZKZY_ZKDJB WHERE KH='6231621131009928786' AND ZKZL='02' AND SDBZ='0';
SELECT * FROM T_ZKZY_ZKDJB WHERE KH='6224781323596595' AND ZKZL='02' AND SDBZ='0';


commit;


spool off
quit;
!
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值