写个shell脚本连接oracle数据库查询某表数据导出为txt文件,再发送到第三

写个shell脚本连接oracle数据库查询某表数据导出为txt文件,再发送到第三,第1张

1、简单的单列

#!/bin/sh

sqlplus 'user001/12345678'<< EOF

set define off

set hea off

spool vip1txt

select username from ACCOUNT where LEVEL=7;

spool off

quit;

EOF

sed -i 's/[ ]//g' ~/vip1txt

sed -i '/^$/d' ~/vip1txt

sed -i '1d' ~/vip1txt

sed -i '$d' ~/vip1txt

scp -P22 ~/vip1txt root@1721612:/root

2、复杂的多列

#!/bin/sh

cid=$1;

today=`date +%Y-%m-%d-%H%M`

ym=`date +%Y%m`

ymd=`date -d -1days +%Y%m%d`

last_ym=`date -d last-month +%Y%m`

next_ym=`date -d next-month +%Y%m`

file=chat_recorder_${cid}_20140707-11xls

if [[ $1 == '' ]];then

echo "Usage: $0 company_id "

exit 0;

fi

sqlplus 'user002/12345678' << EOF

set linesize 200

set term off verify off feedback off pagesize 999

set markup html on entmap ON spool on preformat off

alter session set nls_date_format='YYYY-MM-DD HH24:MI:SS';

spool ${file}

select a,b from recorder_${ym} a,t_${ym} b where acompany_id='$cid' and acreate_time between TO_DATE('2014-07-07 00:00:00', 'YYYY-MM-DD HH24:MI:SS') and TO_DATE('2014-07-12 00:00:00', 'YYYY-MM-DD HH24:MI:SS') and achat_id=bchat_id order by bchat_id ;

spool off

quit;

EOF

sed -i '/select/d' $file

zip -r ${file}zip $file

scp -P22 ${file}zip root@1721615:/opt

两个方法:

1登录SQLPLUS,执行命令:@ E:\\oracle_testsql;

2把脚本文件里的命令复制粘贴到PL/SQL这样的工具下执行,或者直接粘贴在sqlplus WorkSheet下执行。

以上就是关于写个shell脚本连接oracle数据库查询某表数据导出为txt文件再发送到第三全部的内容,包括:写个shell脚本连接oracle数据库查询某表数据导出为txt文件,再发送到第三、如何使用用sql脚本生成oracle数据库!急!!!、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9838772.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存