SQLLDR——CTL文件:字段设置
来源:互联网 发布:淘宝店如何参加聚划算 编辑:程序博客网 时间:2024/05/17 07:15
position 关键字用来指定列的开始和结束位置
position(m:n):指从第 m 个字符开始截止到第 n 个字符作为列值
position(*+2:15):直接指定数值的方式叫做绝对偏移量,如果使用*号,则为相对偏移量,表示上一个字段哪里结束,这次就哪里开始,相对便宜量也可以再做运算。
position(*) char(9):这种相对偏移量+类型和长度的优势在于,你只需要为第一列指定开始位置,其他列只需要指定列长度就可以。
FILLER:控制文件中指定 FILLER,表示该列值不导入表中。
普通
Load DATAINFILE *INTO TABLE BONUSFIELDS TERMINATED BY ","(ENAME,JOB,SAL)BEGINDATASMITH,CLEAK,3904ALLEN,SALESMAN,2891WARD,SALESMAN,3128KING,PRESIDENT,2523
没有分隔符
LOAD DATAINFILE *TRUNCATE INTO TABLE BONUS(ENAME position(1:5),JOB position(7:15),SAL position(17:20))BEGINDATASMITH CLEAK 2891ALLEN SALESMAN 2891WARD SALESMAN 3128KING PRESIDENT 2523
比导入的表列少
LOAD DATAINFILE *TRUNCATE INTO TABLE BONUS(ENAME position(1:5),JOB position(7:15),SAL position(17:20),comm "0")BEGINDATASMITH CLEAK 2891ALLEN SALESMAN 2891WARD SALESMAN 3128KING PRESIDENT 2523
比导入的表列多
LOAD DATAINFILE *TRUNCATE INTO TABLE BONUS(ENAME position(1:6),TCOL FILLER position(8:11),JOB position(13:21),SAL position(23:26))BEGINDATASMITH 7369 CLERK 800 20ALLEN 7499 SALESMAN 1600 30WARD 7521 SALESMAN 1250 30JONES 7566 MANAGER 2975 20MARTIN 7654 SALESMAN 1250 30BLAKE 7698 MANAGER 2850 30CLARK 7782 MANAGER 2450 10KING 7839 PRESIDENT 5000 10TURNER 7844 SALESMAN 1500 30JAMES 7900 CLERK 950 30FORD 7902 ANALYST 3000 20MILLER 7934 CLERK 1300 10
导入不同表
LOAD DATAINFILE *TRUNCATE INTO TABLE BONUSWHEN Tab='BON'(Tab FILLER position(1:3),ENAME position(5:9),JOB position(11:19),SAL position(21:24))INTO TABLE MANAGERWHEN Tab='MGR'(Tab FILLER position(1:3),MGRNO position(5:6),MNAME position(8:14),JOB position(16:28))BEGINDATABON SMITH CLERK 3904BON ALLEN SALER,M 2891BON WARD SALER,"S" 3128BON KING PRESIDENT 2523MGR 10 SMITH SALES MANAGERMGR 11 ALLEN.W TECH MANAGERMGR 16 BLAKE HR MANAGERTMP SMITH 7369 CLERK 800 20TMP ALLEN 7499 SALESMAN 1600 30TMP WARD 7521 SALESMAN 1250 30TMP JONES 7566 MANAGER 2975 20
换行符处理
LOAD DATAINFILE *TRUNCATE INTO TABLE BONUSFIELDS TERMINATED BY "," OPTIONALLY ENCLOSED BY '"'(ENAME,JOB,SAL)BEGINDATASMITH,CLEAK,3904ALLEN,"SALER,M",2891WARD,"SALER,""S""",3182KING,PRESIDENT,2523
函数使用
LOAD DATAINFILE *TRUNCATE INTO TABLE BONUS(ENAME position(1:5),JOB position(7:15),SAL position(17:20),comm "substr(:sal,1,1)")BEGINDATASMITH CLEAK 3904ALLEN SALESMAN 2891WARD SALESMAN 3128KING PRESIDENT 2523
大字段处理
LOAD DATAINFILE * "str '\r\n'"TRUNCATE INTO TABLE MANAGERFIELDS TERMINATED BY "," OPTIONALLY ENCLOSED BY '"'(MGRNO,MNAME,JOB,REMARK char(100000))BEGINDATA10,SMITH,SALES MANAGER,This is SMITH.He is a Sales Manager.|11,ALLEN.W,TECH MANAGER,This is ALLEN.W.He is a Tech Manager.|16,BLAKE,HR MANAGER,"This is BLAKE. He is a Hr Manager. The jobs responsibilities are in the following:1. Ensure the effective local implementation of corporate level HRinitiatives and new programs.2. Take initiatives in defining HR strategy on attracting, hiring, integrating, developing, managing, rewarding and retaining talents for the sustainable development of company business.3. Oversee stanard recruiting an procedures to ensure the company's staffing requirements are met in a timely manner, and interview management level candidates4. Provide employees with fair and appropriate compensation and benefit, to ensure market competitiveness.5. Develop, implement and oversee the training and development programs to upgrade the skills of the employee and to enhance the company's capabilities to met business goals and future challenges."
加载文件内容到大字段
LOAD DATAINFILE *TRUNCATE INTO TABLE LOBTBL( CREATE_DATE POSITION(1:17) DATE 'YYYY-MM-DD HH24:MI', FILESIZE POSITION(*+1:25) "to_number(:FILESIZE, '99,999,999')", FILEOWNER POSITION(*+1:34), FILENAME POSITION(*+1) char(200) "substr(:FILENAME,instr(:FILENAME, '\\',-1)+1)", FILEDATA LOBFILE(FILENAME) TERMINATED BY EOF)BEGINDATA2009-03-17 09:43 154 JUNSANSI F:\oracle\script\ldr_case11_1.ctl2009-03-17 09:44 189 JUNSANSI F:\oracle\script\ldr_case11_1.dat2009-03-17 09:44 2,369 JUNSANSI F:\oracle\script\ldr_case11_1.log2009-03-16 16:50 173 JUNSANSI F:\oracle\script\ldr_case11_2.ctl2009-03-16 16:49 204 JUNSANSI F:\oracle\script\ldr_case11_2.dat2009-03-16 16:50 1,498 JUNSANSI F:\oracle\script\ldr_case11_2.log2009-03-16 17:41 145 JUNSANSI F:\oracle\script\ldr_case11_3.ctl2009-03-16 17:44 130 JUNSANSI F:\oracle\script\ldr_case11_3.dat2009-03-16 17:44 1,743 JUNSANSI F:\oracle\script\ldr_case11_3.log2009-03-17 11:01 132 JUNSANSI F:\oracle\script\ldr_case11_4.ctl2009-03-17 11:02 188 JUNSANSI F:\oracle\script\ldr_case11_4.dat2009-03-17 11:02 1,730 JUNSANSI F:\oracle\script\ldr_case11_4.log
载入每行的行号
load data infile * into table t replace (seqno RECNUM //载入每行的行号 text Position(1:1024)) BEGINDATA testline1testline2
阅读全文
0 0
- SQLLDR——CTL文件:字段设置
- SQLLDR—CTL文件
- SQLLDR CTL文件
- 【20150622 】sqlldr及ctl文件
- oracle sqlldr——sqlldr控制文件模板
- oracle sqlldr——sqlldr控制文件模板
- sqlldr默认字符串最大长度修改和ctl文件的格式
- shell处理—文件汇总到一个文件里,用sqlldr装入数据库这些文件数据都少一个字段而字段内容为这个文件的名字
- 在oracle中 生成大规模数据 500万条 (使用导入数据方式 sqlldr 导入命令 *.ctl文件)
- 导入ctl文件
- sqlldr 增加常量字段
- ctl
- ctl
- sql load的CTL文件
- sqlldr控制文件详解
- GrADS描述文件(CTL)解析器 (1)
- GrADS描述文件(CTL)解析器 (2)
- grads处理多个ctl文件
- ActiveMQ实战1:ActiveMQ Java
- Scrapy爬虫----(一)命令行工具
- 数据结构课程设计_《旅游景区信息管理系统》
- MongoDB学习笔记
- 第五届蓝桥杯大赛个人省赛javaB组
- SQLLDR——CTL文件:字段设置
- 请系好安全带,Channel老司机开车啦! 2017-12-20 小奇爱音乐 奇亿音乐 老司机 带带我 我要去省城 不是所有的司机 都是老司机 更不是所有的老司机 都是开车的
- 什么是CXF
- angular 购物车(+,-),小计,总价
- TensorFlow 模型保存与加载
- 多条目加载
- 让旧iPhone变慢?苹果终于承认且给了一个好理由
- 简单实现购物车
- android