oracle spool定期导出文本文件数据,并加载到teradata

oracle spool 导出纯数据文本 由于生产环境种种原因,无法使用OCIULDR/SQLULDR,只能在windows环境中的客户端连接数据库,同时也有导出数据问题 想到了利用客户端上用spool导出文本文件 上脚本 注意:①sqlplus 命令要加一个 -s 静默模式,减少不必要的输出 ②其他具体参数可百度 cmd命令 sqlplus -s scott/tiger @spool.sql --spo 阅读详情

oracle导出文本文件数据的方法貌似只有sqlplus的spool命令,要定期导出需要借助os的计划任务之类的,不过10g中dbms_schedualr也支持直接掉os批处理文件。 文件名动态命名为当前日期。 例如,--bat文件D:\oracle92\bin\sqlplus @C:\zhjh\demo.sql --C:\zhjh\demo.sqlSET NEWPAGE NONE
SET HEADING OFF
SET SPACE 0
SET PAGESIZE 0
SET TRIMOUT ON
SET TRIMSPOOL ON
SET LINESIZE 2500
set colsep '|'
set feedback off
set echo off
SET VERIFY OFF

set termout on  --如果数据量比较大,要把屏幕显示输出关掉提高性能
column v_date new_value filename;
select to_char(sysdate,'yyyymmdd') || '.dat' v_date from dual;
spool c:\&&filename
select * from scott.emp;
spool off; --执行后      7369|SMITH               |CLERK             |      7902|17-DEC-80|       800|          |        20
      7499|ALLEN               |SALESMAN          |      7698|20-FEB-81|      1600|       300|        30
      7521|WARD                |SALESMAN          |      7698|22-FEB-81|      1250|       500|        30
      7566|JONES               |MANAGER           |      7839|02-APR-81|      2975|          |        20
      7654|MARTIN              |SALESMAN          |      7698|28-SEP-81|      1250|      1400|        30
      7698|BLAKE               |MANAGER           |      7839|01-MAY-81|      2850|          |        30
      7782|CLARK               |MANAGER           |      7839|09-JUN-81|      2450|          |        10
      7788|SCOTT               |ANALYST           |      7566|19-APR-87|      3000|          |        20
      7839|KING                |PRESIDENT         |          |17-NOV-81|      5000|          |        10
      7844|TURNER              |SALESMAN          |      7698|08-SEP-81|      1500|         0|        30
      7876|ADAMS               |CLERK             |      7788|23-MAY-87|      1100|          |        20
      7900|JAMES               |CLERK             |      7698|03-DEC-81|       950|          |        30
      7902|FORD                |ANALYST           |      7566|03-DEC-81|      3000|          |        20
      7934|MILLER              |CLERK             |      7782|23-JAN-82|      1300|          |        10

然后再用任何调度工具调度即可。 海量数据导出的话可以使用并行导出,用条件区分开,这样可以提高导出性能。 在导入teradta数据库时,使用fastload即可,并且该工具支持一次从多个文件导入。

 

set命令使用说明:

SQL>set colsep' '; //-域输出分隔符 
SQL>set newp none //设置查询出来的数据分多少页显示,如果需要连续的数据,中间不要出现空行就把newp设置为none,这样输出的数据行都是连续的,中间没有空行之类的 
SQL>set echo off; //显示start启动的脚本中的每个sql命令,缺省为on 
SQL> set echo on //设置运行命令是是否显示语句 
SQL> set feedback on; //设置显示“已选择XX行” 
SQL>set feedback off; //回显本次sql命令处理的记录条数,缺省为on即去掉最后的 "已经选择10000行" 
SQL>set heading off; //输出域标题,缺省为on 设置为off就去掉了select结果的字段名,只显示数据 
SQL>set pagesize 0; //输出每页行数,缺省为24,为了避免分页,可设定为0。 
SQL>set linesize 80; //输出一行字符个数,缺省为80 
SQL>set numwidth 12; //输出number类型域长度,缺省为10 
SQL>set termout off; //显示脚本中的命令的执行结果,缺省为on 
SQL>set trimout on; //去除标准输出每行的拖尾空格,缺省为off 
SQL>set trimspool on; //去除重定向(spool)输出每行的拖尾空格,缺省为off 
SQL>set serveroutput on; //设置允许显示输出类似dbms_output 
SQL> set timing on; //设置显示“已用时间:XXXX” 
SQL> set autotrace on-; //设置允许对执行的sql进行分析 
set verify off //可以关闭和打开提示确认信息old 1和new 1的显示. 

SET TERM[OUT]{ON|OFF}

是否在屏幕上显示输出的内容,主要用与SPOOL结合使用。设置SETTERMOUTOFF,输出的内容只保存在输出文件中,不会显示在屏幕上,提高了SPOOL输出速度。

 

 

set命令介绍见:

http://blog.youkuaiyun.com/lichangzai/article/details/10000995

oracle官方:http://docs.oracle.com/cd/E11882_01/server.112/e16604/ch_twelve040.htm#SQPUG075

tianlesoftware:http://blog.youkuaiyun.com/tianlesoftware/article/details/5270191

实验案例:http://wallimn.iteye.com/blog/472182


数据库积累(teradata+oracle) 数据库积累(teradata+oracle)数据库积累(teradata+oracle)数据库积累(teradata+oracle)数据库积累(teradata+oracle) 立即下载

相关推荐

oracle,teradata,hive,gbase,db2数据库导出csv命令总结

五种常见数据库(oracle,teradata,gbase,hive,db2),通过指令的方式导出csv格式文件的总结,实例.例如spool,select.. into outfile,export .... of del,fastExport.

spool输出带日期的文件名

column today new_value today_file --定义列值保存到变量today_file中 select 'abc_'||to_char(sysdate,'yyyymmddhh24mi') as today from dual; --赋值列值 SPOOL /tmp/&&today_file..txt; set serveroutpu...

qq_41688733的博客 1934

spool oracle数据导出

spool oracle数据导出,包含java代码实例以及sql实例

使用sqlplus的spool动态生成导出文件名

动态生成spool命令所需的文件名某些例子中,spool命令所需要的文件名都是固定的。 有时我们需要每天spool一次,并且每次spool的文件名都不相同,如文件名包含当天的日期,该如何实现呢?column dat1 new_value filename;select to_char(sysdate,'yyyymmddhh24mi') dat1 from dual;spool c:/&...

iteye_14109的博客 1211

altium room 布局_ALtium 16相同重复模块PCB布局,复制布局走线

自己做了实际工程以后发现PCB器件名字后缀太长了,所以文章最后写了一下后缀的调整方法。第一种方法:1、建立子原理图如下,文件名CANM 2、之后新建一个顶层文件,文件名TOP,之后design—create sheet symbol form sheet or hdl。选择CANM,并放置到TOP中,如下 3、由于我们要多次调用CANM所以使用repeat命令修改如下: 4、之后根据自己的定义,连...

weixin_39609573的博客 5751

Keil C51里用printf打印数据,为啥总出乱码?手把手教你%bd、%hd、%ld的正确用法

本文深入解析Keil C51中printf打印数据出现乱码的根本原因,并提供格式符%bd、%hd、%ld的正确用法指南。通过详细的调试技巧和实战案例,帮助开发者解决串口输出问题,提升单片机开发效率。

weixin_26854829的博客 281

sqlplus中利用spool生成带日期的文件名

col v_filename new_value v_filename noprint Select to_char(sysdate,'yyyymmdd')||'.txt' v_filename from dual; spool e:&v_filename; select * from dual; spool off;

wll的专栏 1595

深入解析Android Qcom Camera HAL3架构与Camx线程模块

本文深入解析了Android Qcom Camera HAL3架构与Camx线程模块的核心原理。文章以高通芯片平台为例,剖析了从按下快门到生成照片的完整Camera流程分析,重点阐述了Camx框架中线程池、消息队列及Fence同步机制如何协同工作,以实现高效、稳定的多线程并发图像处理,为相机性能优化提供理论基础。

weixin_29184075的博客 221

sqlplus中改变日期输出格式的方法

sqlplus中改变日期输出格式的方法    工作中碰到用spool导出数据,其中有日期格式的字段,因为format了各列,就不想用to_char把日期再format了,而且用to_char的话还要把要所有的列都写在select语句中。win下默认的格式为DD-MM-yy ,如下:   SQL>select sysdate from dual;      SYSDATE   -----

编程岁月 1997

千兆网口电路设计中的EMC防护与TVS选型实战

本文深入探讨了千兆网口电路设计中面临的EMC挑战,并提供了TVS二极管选型的实战指南。文章分析了ESD、浪涌和EFT等主要威胁,重点阐述了如何根据工作电压、钳位电压和关键的低结电容等参数为PHY芯片选择匹配的TVS器件,以确保在严苛电磁环境下实现可靠的信号完整性与防护。

m3n5b7v8c9x的博客 531

UOS的ARM机编译QT5.14.2记录

我需要的qt版本是Qt5.14.2,所以选择编译Qt5.14.2源码;几个月前尝试了编译一次,当时编译过程中出现了报错,当时时间很紧最后安装的默认版本来使用,最近有时间重新进行了一次编译,历经3个星期(4G的内存)终于解决了各种坑,编译成功了,现在将编译过程中遇见的一些坑记录一下,方便日后能记得这一次可恶的编译过程,如有描述欠缺的地方,还希望各位大佬给点意见指导指导🙏。

NiF693zzz的博客 1618

oracle spool文件名+系统时间,Oracle Spool详解

转自:http://blog.sina.com.cn/s/blog_6bccf0360101hzsh.html1.spool的作用是什么?spool的作用可以用一句话来描述:在sqlplus中用来保存或打印查询结果。2.spool在oracle 9i、10g和11g下的语法及使用示例oracle 9i spool语法SPO[OL] [file_name[.ext]|OFF|OUT]oracle 1...

weixin_28934777的博客 1437

【土壤普查实战】Python+ArcGIS随机森林模型一键生成土壤类型栅格图

本文详细介绍了如何利用Python和ArcGIS结合随机森林模型实现土壤类型栅格图的自动化生成,大幅提升土壤普查效率。通过环境准备、数据预处理、模型构建与调优等关键步骤,帮助用户掌握从样本点生成到最终栅格图输出的完整流程,适用于大面积区域或样本点较多的土壤分类任务。

weixin_29229989的博客 218

oracle定时加载文件,oracle定期导出文本文件数据,并加载到teradata

oracle导出文本文件数据的方法貌似只有sqlplus的spool命令,要定期导出需要借助os的计划任务之类的,不过10g中dbms_schedualr也支持直接掉os批处理文件。文件名动态命名为当前日期。例如,--bat文件D:\oracle92\bin\sqlplus @C:\zhjh\demo.sql--C:\zhjh\demo.sqlSET NEWPAGE NONESET HEADIN...

weixin_33510225的博客 200

同花顺客户端数据采集:Hook注入与内存解密实战

在金融量化领域,客户端数据采集是获取低延迟、高精度行情的关键技术路径。其底层涉及进程通信、内存加密、反调试等典型Windows逆向工程问题。理解API Hook原理与AES-CBC动态密钥派生机制,有助于突破传统HTTP爬虫在国产金融软件中的失效困境。该技术不依赖网络劫持,而聚焦于本地进程内函数拦截与运行时内存解析,具备离线、可控、合规等工程优势,广泛应用于Level2行情、逐笔委托、分笔成交等高频数据场景,是量化基础设施中‘端侧数据主权’的重要实现方式。

weixin_30496999的博客 856

别再手动改颜色了!用这个Word宏,一键搞定Zotero参考文献超链接的蓝色样式

本文介绍如何利用Word宏一键修改Zotero参考文献的超链接颜色,解决手动调整的繁琐问题。通过详细的VBA代码解析和高级定制方案,帮助科研人员快速实现文献引用的自动化格式优化,提升论文排版效率。特别适合需要批量处理APA等标准格式蓝色超链接的用户。

weixin_30875157的博客 515

自动设置SPOOL文件名为当前日期

自动设置SPOOL文件名为当前日期[@more@]自动设置SPOOL文件名为当前日期column spool_name new_value Sset termout offselect to_char( sysdate, 'dd...

congzhan2577的博客 320

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

spool生成时间格式文件,ftp再上传(window上)

这是一些小脚本,平常用得比较少,所以,写在这里记录一下。 首先,spool 出的文件名 要求随着 日期每天都要变,所以生成 一个wk1.sql 文件 set term offset echo offset ...

cuichenkai7892的博客 313

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

oracle spool循环导出文件,oracle 使用spool导出数据到文件

--oracle 使用spool导出数据到文件需要将数据库中的数据以txt文本形式导出,可以用spool方式导出。--创建脚本文件 spool.sql--添加如下语句SPOOL D:\works\数据库dump\spool\bbb.txtset echo off --不显示脚本中正在执行的SQL语句set feedback off --不显示sql查询或修改行数set term off --...

weixin_35422396的博客 1140

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

spool命令的使用

SPOOL是sqlplus中的命令,可作如下用途:1)可使用SPOOL保存查询的结果集[sql] view plain copySPOOL "C:\test.txt" --生成test.txt文件  ...  SPOOL OFF --终止,此时这些内容全部被写入文件outputfile中  2)可使用SPOOL命令生成一些动态的批量处理的脚本,如删除表:[sql] view plain copyS...

渴望飞的鱼的博客 1万+

公司业务-etl-EDIP文件解析+添加分割符+转换编码

SRC EDIP叫定长双文件,是用来进行数据迁移的格式。一个表被转换为2个文件,1个flag用来存储表结构。1个压缩的dat.gz用来存储表数据,解压后是个dat文件。 flg文件格式如下: 编解码 想要转换1个文件的编码,必须知道原来的编码。 主要就是字符串操作 ...

DCHAO的博客 2121

Oracle通过spool命令导出.dat数据,及通过Shell脚本定时任务执行卸数

这篇文章看起来有点简陋小白,但是如果你也遇到了这样的问题需求,仔细把它看完,对你一定有所帮助。 首次写shell脚本,语法很菜,希望大家指点跟进 我在这不多废话,开始 spool脚本 首先spool脚本常用命令: spool C:\Users\AnYi\Desktop\ODS\a.dat--文件生成位置 set colsep '@|@'--输出分隔符(建议在sql中分隔:||'@|@'||如下:) set echo off--显示命令 set feedback on--处理的记录条数 set pagesiz

weixin_45106532的博客 4017

oracle 使用spool导出数据到文件

--oracle 使用spool导出数据到文件 需要将数据库中的数据以txt文本形式导出,可以用spool方式导出。 --创建脚本文件 spool.sql --添加如下语句 SPOOL D:\works\数据库dump\spool\bbb.txt set echo off  --不显示脚本中正在执行的SQL语句 set feedback off --不显示sql查询或修

DBA小站 2万+

oracle定时导出查询结果,oracle使用spool导出select查询结果

Spool,是Oracle快速导出数据的工具,是sqlplus的指令,不是sql语法里的东西;特殊场景,只有select表数据的权限,想要导出所有查询结果,使用sqlplus操作sql如下:set trimspool on; #去除重定向(spool)输出每行的拖尾空格,缺省为offset linesize 500; #输出一行字符个数,缺省为80set...

weixin_31998661的博客 853

Oracle数据库定时任务配置和日志执行情况查询

创建定时任务/***************************************************************** * * 移动抵扣券快到期推送提醒 * 首次执行 : 2016-09-19 10:00:00 * 定期执行 : 每天10:00:00 * ***********************************************************

随风落叶 1万+
上一篇: 应用还原的控制文件进行不完全恢复
下一篇: agent错误一则:EMD upload error: Upload was successful but collections currently disabled - disk full
常飞梦
常飞梦 领域专家: 数据库技术领域 领域专家: 数据库技术领域
博客等级 码龄21年 403粉丝 314原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值