共计 1200 个字符,预计需要花费 3 分钟才能阅读完成。
这篇文章给大家介绍 DMFLDR 对含有分隔符的字段数据的处理方法是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
对于利用 dmfldr 待加载的数据文件中对应字段数据含有分隔符该如何处理?
1. 创建测试表
CREATE TABLE“SYSDBA”.“TEST01”
(
“C1”VARCHAR2(20),
“C2”VARCHAR2(20),
“C3”VARCHAR2(20),
“C4”VARCHAR2(20)) STORAGE(ON“MAIN”, CLUSTERBTR) ;
2. 编辑数据文件
测试数据如下:
1,“2”,3,4
22,“3,40”,4,5
4556,“5”,6,7
3. 编辑控制文件
编辑控制文件 test01.ctl 如下:
OPTIONS
(
SKIP = 0
IGNORE_BATCH_ERRORS = TRUE
DIRECT = FALSE
)
LOAD DATA
INFILE‘C:\Users\Think\Desktop\test01.txt’
INTO TABLE TEST01
FIELDS‘,’
(
C1,
C2 OPTIONALLY ENCLOSE BY‘’,
C3,
C4
)
4. 利用控制文件加载数据
D:\dm7\bin dmfldr.exe userid=SYSDBA/SYSDBA@LOCALHOST:5236 CONTROL= c:\text01.ctl
dmfldr V7.6.0.197-Build(2019.09.12-112648)ENT
dmfldr:
Copyright (c) 2011, 2015, Dameng. All rights reserved.
控制文件:
加载行数: 全部
每次提交服务器行数:50000
跳过行数:0
允许错误数:100
是否直接加载:No
是否插入自增列:No
数据是否已按照聚集索引排序:No
字符集:GBK
数据文件共 1 个:
C:\Users\Think\Desktop\test01.txt
错误文件:fldr.bad
目标表:TEST01
列名
包装数据类型
终止
C1 CHARACTER ,
C2 CHARACTER ,
C3 CHARACTER ,
C4 CHARACTER ,
3 rows processed.
目标表:TEST01
3
行加载成功。
由于数据格式错误,0 行 丢弃。
由于数据错误,0 行 没有加载。
跳过的逻辑记录总数:0
读取的逻辑记录总数:3
拒绝的逻辑记录总数:0
用时:9.169(ms)
5. 查询测试表数据
SQL select * from SYSDBA.“TEST01”;
C1 C2 C3 C4
1 2 3 4
22 3,40 4 5
4556 5 6 7
如上可知,利用 dmfldr 的封闭符,我们所期望的结果完美达成,字段数据含有分隔符也能快速解决。
关于 DMFLDR 对含有分隔符的字段数据的处理方法是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。