1、win下批处理调度文件
data_spool.bat
- F:\oracle\product\10.2.0\db_1\BIN\sqlplus tax/tax@orcl @D:\PDM_SQL\spool\spool_ctl.spl >>D:\PDM_SQL\spool\spool_info.log
2、文本导出结构控制文件
spool_ctl.spl
- set trimspool on
- set term off
- set feedback off
- set pagesize 0
- set line 32767
- set echo off --关掉回显
- set trims on --去掉空字符
- set heading off --关掉标题行
- set termout off --关掉终端显示
- set feedback off --关掉行数显示
-
- ----人员信息
- @D:\PDM_SQL\spool\select\tb_pep_insur_info.select;
- ----保险信息
- @D:\PDM_SQL\spool\select\tb_pep_info.select;
- exit
3、导出位置及select查询文件
tb_pep_info.select
- ----人口信息
- spool D:\PDM_SQL\spool\out_data\tb_pep_info.txt
- SELECT sfzhm||'|'|| xm||'|'|| zym||'|'|| mz_cd||'|'|| xb_cd||'|'|| csny||'|'|| whcd_cd||'|'|| zzmm_cd||'|'|| lxdh||'|'|| rylx_cd||'|'|| hjxxdz||'|'|| xjzddz||'|'|| data_dt FROM tb_pep_info;
- spool off
tb_pep_insur_info.select
- ----保险信息
- spool D:\PDM_SQL\spool\out_data\tb_pep_insur_info.txt
- select sfzhm||'|'|| xm||'|'|| cblx_cd||'|'|| cbrq||'|'|| jflx_cd||'|'|| jfje||'|'|| ybsblx_cd||'|'|| jfrq FROM tb_pep_insur_info;
- spool off
4、说明
(1)、记录此spool过程的文章并不是说它有多难或复杂,而是便于以后查找的方便。
(2)、“set line 32767”,其中32767是可以设置的最大值,当设置的数据大于32767的时候,每行显示的长度就会变成默认的80多;这是在win下经过测试得出的,在其他系统下可能会有不同。
(3)、可以通过本文中的方式,实现设置一次结构控制参数而完成多个表的导出。
(4)、“sqlplus tax/tax@orcl @D:\PDM_SQL\spool\spool_ctl.spl”,一直有一个误区,总以为有一个@后跟连接名之后就不能再用@后跟脚本文件了;其实不然,oracle没那么低级。
(5)、select拼合脚本可以通过在pl/sql工具中,左键该表或视图拉至sql语句编辑区选择“select”可得出些表的查询语句,然后用“||'|'||”替换逗号即可;方便、快速、实用。
转载自:http://blog.youkuaiyun.com/nisjlvhudy/article/details/8519489