文档章节

oracle语句写CTL脚本

 毕加索5481
发布于 2017/08/22 10:30
字数 219
阅读 18
收藏 0

--oracle语句写ctl脚本

--文件路径  /home/hdeast/east_share/input_east/dataFile/2017-03-31/ts_wyhl_zfywdjb20170401.unl  

----------------------------start------------------------------------

select 'LOAD DATA'||chr (10)||
       'CHARACTERSET ZHS16GBK'||chr (10)||
    'INFILE '||'''/home/hdeast/east_share/input_east/dataFile/2017-03-31/ts_wyhl_zfywdjb20170401.unl'''||chr (10)||
    'BADFILE '||'''/home/hdeast/east_share/input_east/dataFile/2017-03-31/ts_wyhl_zfywdjb.bad'''||chr (10)||
    'TRUNCATE INTO TABLE '|| TABLE_NAME||chr (10)||
    'FIELDS TERMINATED BY  ''|'''||chr (10)||  
    'TRAILING NULLCOLS'||chr (10)||'('
from  user_tables  where TABLE_NAME= upper( 'T_MODEL_DGKH_0') union all 
select decode (rownum, 1, '   ', ' , ')||
       rpad (column_name, 33, ' ')||
         decode (data_type,
               'VARCHAR2', --'CHAR('|| DATA_LENGTH ||') NULLIF ('||column_name||'=BLANKS)',
                           '"trim(:'||column_name||')"',   
                'CHAR', 'CHAR('|| DATA_LENGTH ||') NULLIF ('||column_name||'=BLANKS)',
               'FLOAT',    'DECIMAL EXTERNAL NULLIF('||column_name||'=BLANKS)',
               'TIMESTAMP(6)','"LOCALTIMESTAMP"',
              /* 'NUMBER',   decode (data_precision, 0,
                           'INTEGER EXTERNAL NULLIF ('||column_name||
                           '=BLANKS)', decode (data_scale, 0,
                           'INTEGER EXTERNAL NULLIF ('||
                           column_name||'=BLANKS)',
                           'DECIMAL EXTERNAL NULLIF ('||
                           column_name||'=BLANKS)')),*/
                           
               --   'NUMBER',         '"to_number(:'||column_name||'),"'
               'NUMBER', '"trim(:'||column_name||')"',
              -- 'DATE',     'DATE "yyyy-MM-dd HH24:MI:SS"  NULLIF ('||column_name||'=BLANKS)',
               'DATE',    '"to_date(:'||column_name||','||'''yyyy/mm/dd'''||')" ',
               null)
from   (select * from user_tab_columns order  by column_id)
where  table_name = upper( 'T_MODEL_DGKH_0') union all   
 select ')'
from sys.dual ;

-------------------------------------------end--------------------------------------------------------

sqlldr语句

sqlldr zhsb/zhsb@zhdb control='/home/zhsb/ctl/O_E_ZHSB_GRYHZH.ctl' log='/home/zhsb/zhsb.log' bad='/home/zhsb/zhsb.bad' direct=true rows=5000

 

 

用命令窗口执行即可;

 

 

 


 

© 著作权归作者所有

共有 人打赏支持
粉丝 0
博文 15
码字总数 14734
作品 0
南京
程序员
私信 提问
sqllder调用ctl抽数脚本

一般数据量大的话用离线调用的方式实现:1.写一个shell脚本调用nohup:nohup sh test.sh >nohup.out 2.写一个调用ctl的shell脚本:命名为:test.sh内容如下:sqlldr userid=用户名/密码@SID co...

功夫panda
2016/06/16
35
0
ORACLE体系结构--控制文件管理

控制文件管理 controlfile 1.控制文件的作用 记录数据库的结构与行为 数据库的名字,日志名字,存放路径.... 数据库在做恢复和实例恢复的时候会使用我们的控制文件 2.控制文件在项目中规划 ...

柳白子
2016/12/07
4
0
Oracle 常用查询语句

1.创建序列 2.查看建表DDL语句 同理可以更换第一个参数的名字查看其他对象的DDL。 3.查询分区表的某个分区数据 4.sqlldr 导入数据库数据文件中字段被双引号引起,ctl文件需要添加如下语句: ...

清风_
2016/09/27
16
0
控制文件管理

一:什么是控制文件 控制文件是一个二进制文件,记录数据库的物理结构,控制文件包括以下内容 1 数据库的名字 2 数据文件和重做日志文件两者的名字以及位置 3 数据库创建的时间戳 4 当前日志...

余二五
2017/11/16
0
0
oracle 备份恢复 03手工完全恢复

一、搭建实验环境 1.创建8张表scott.lxtb1-lxtb8 create table scott.lxtb8 tablespace lxtb as select * from scott.emp; 2.3DML操作 insert into scott.lxtb8 select * from scott.emp; c......

PeakFang-BOK
10/14
0
0

没有更多内容

加载失败,请刷新页面

加载更多

eureka多注册中心

eureka分区的深入讲解

miaojiangmin
12分钟前
1
0
RAM SSO功能重磅发布 —— 满足客户使用企业本地账号登录阿里云

阿里云RAM (Resource Access Management)为客户提供身份与访问控制管理服务。使用RAM,可以轻松创建并管理您的用户(比如雇员、企业开发的应用程序),并控制用户对云资源的访问权限。 对云资...

阿里云官方博客
15分钟前
0
0
Mysql 8.0 | #08004Client does not support authentication protocol requested by server

完整报错 #08004Client does not support authentication protocol requested by server; consider upgrading MySQL client 解决方法 Using the old mysql_native_password works:ALTER ......

云迹
17分钟前
0
0
kylin入门到实战

1.概述 kylin是一款开源的分布式数据分析工具,基于hadoop之上的sql查询接口,能支持超大规模的数据分析。响应时间在亚秒级别,其核心是预计算,计算结果存放在hbase中。 2.特性 可扩展超快O...

hblt-j
20分钟前
0
0
vagrant mac 安装和使用

varant 在mac上使用起来非常的方便,具体的下载步骤可以看这里https://segmentfault.com/a/1190000000264347 这里主要是记录一下配置文件 # -*- mode: ruby -*- # vi: set ft=ruby : # All V...

一千零一夜个为什么
20分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部