SQL*LOAD 数据文件与目标表数目不一致加载
来源:互联网 发布:陕西千秋网络好不好 编辑:程序博客网 时间:2024/05/21 23:02
本节所讲的数据文件与目标表数目不一致指2种情况:第一种,多个数据文件加载到单个目标表中;第二种,单个数据文件加载多个目标表中。
1.多个数据文件加载到单个目标表中
下面就将数据文件test06.dat、test07.dat、test08.dat加载到LoadTest表为例,数据文件内容分别如下:
数据文件test06.dat如下:
45,data,update46,clicl,insert47,wang,replace48,sing,insert
数据文件test07.dat如下:
51,fgu,update52,kll,insert
数据文件test08.dat如下:
53,fgfh,update54,tt,insert55,gg,replace
对应该数据文件的控制文件test06.ctl如下:
LOAD DATA INFILE test06.datINFILE test07.datINFILE test08.datDISCARDFILE 'test06.dsc'TRUNCATEINTO TABLE LOADTESTFIELDS TERMINATED BY","(LOADID, OPERNAME,OPERTYPE)
运行SQL*Loader,加载数据,
[oracle@nn ~]$ sqlldr nn/123 control=/home/oracle/test06.ctl
通过SQL*Plus查询加载结果:
SQL> SELECT t.* FROM loadtest t;
2.单个数据文件加载多个目标表中
比如,将数据文件test09.dat中OPERTYPE字段值为“insert”的数据导入到LOADIN表中,字段值为“update”的数据导入到LOADUP表中。
数据文件test09.dat如下:
1,data,update2,,insert3,yju,replace4,sing,insert5,hyui,update6,clicl,insert7,gg,replace8,dfh,insert
对应该数据文件的控制文件test09.ctl如下:
LOAD DATA INFILE test09.datDISCARDFILE 'test09.dsc'TRUNCATEINTO TABLE LOADIN WHEN OPERTYPE='insert'FIELDS TERMINATED BY","TRAILING NULLCOLS(LOADID, OPERNAME,OPERTYPE)INTO TABLE LOADUP WHEN OPERTYPE='update'FIELDS TERMINATED BY","(LOADID POSITION(1), OPERNAME POSITION(3:6),OPERTYPE POSITION(8:14))
注意:同一个文件导入到2张以上表的情况,when后面必须要个POSITION,否则第2张表加载不了。
运行SQL*Loader,加载数据,
[oracle@nn ~]$ sqlldr nn/123 control=/home/oracle/test09.ctl
通过SQL*Plus查询加载结果,可见OPERTYPE字段值为“insert”的数据导入到LOADIN表中,字段值为“update”的数据导入到LOADUP表中,其他的数据存入了test09.dsc文件中。
SQL> SELECT t.* FROM loadin t;SQL> SELECT t.* FROM loadup t;
0 0
- SQL*LOAD 数据文件与目标表数目不一致加载
- SQL*LOAD 列不一致的数据加载
- dg备库数据文件路径与db_file_name_convert设置不一致
- 编译平台与目标平台不一致带来的麻烦
- 编译平台与目标平台不一致导致的麻烦
- 表空间与数据文件
- 一次数据文件头不一致恢复
- load一个数据文件
- 通过Load table命令将数据文件加载到Sybase IQ数据库里面的Python脚本
- 数据文件数据加载到hive表
- Oracle 表空间与数据文件
- Oracle 表空间与数据文件
- Oracle 表空间与数据文件
- Oracle 表空间与数据文件
- Oracle 表空间与数据文件
- ORACLE表空间与数据文件
- Oracle 表空间与数据文件
- Oracle 表空间与数据文件
- 查找String中中文的个数
- 个人eclipse字体 Courier New、Consolas
- 四种类型的变量与零值得比较
- java properties文件 换行
- JS中位置与大小的获取
- SQL*LOAD 数据文件与目标表数目不一致加载
- React插件-类名操作
- 你应该知道的那些Android小经验
- Android WebView 开发详解(一)
- 实现视图控制器一次 dismissViewController 两个视图控制器
- 当TensorFlow遇见CNTK
- React插件-测试工具集-克隆组件
- 有了3D Touch,再也不用AssistiveTouch了
- Oracle 函数