数据库导出成txt文件

脚本原型:

#!/bin/sh
clear
echo "connect Database"

echo "Please Enter UserName ->"|tr -d "\012"
    read _USER
echo "Please Enter Password ->"|tr -d "\012"
    read _PWD

main()
{
sqlplus -s ${_USER}/${_PWD} << EOF

whenever sqlerror exit 1;  
whenever oserror exit 2; 
#set newp none;                                 设置查询出来的数据中间没有空行
#set heading off;                               输出标题域,设置为off就是不显示查询语句,只显示数据
#set pagesize 0;                                输出每页的行数,设置为0就是不分页
#set linesize 400000;                           尽量设置大一些(比实际数据要大),输出一行的字符个数  
#set trims off;                                 将spool输出中每行后面多余的空格去掉
#set trimout on;                                去除标准输出每行的拖尾空格
#set feedback off;                              回显本次sql命令的处理的记录条数--
#set termout on;                                显示脚本命令中执行的结果,缺省为on
#set verify off;                                关闭提示确认信息
#set term off;                                  输出的文件不会显示在屏幕上,可提高spool的速度
#set echo off;                                  不显示执行sql语句
#set sqlprompt SQL>;                            去除开头和结尾的sql查询和结束命令

set trimspool on 
set linesize 10000 
set pagesize 0
set newpage 1 
set heading off 
set term off 
alter session set nls_date_format='YYYY-MM-DD HH24:MI:SS';
spool /home/oracle/wh/tt.txt;
select RECORD_ID||' '||CLAIM_ID||'  '||CLAIM_CODE||'    '||CLAIM_STATUS||'  '||CAR_MARK||'  '||VEHICLE_TYPE||'  '||REPORT_NO||' '||CREATE_TIME||'   '||LAST_MODIFY_DATE from ma_05;
spool off
/

EXIT 3;
EOF

}
main 



猜你喜欢

转载自blog.csdn.net/m983373615/article/details/81098718
今日推荐