dmfldr
(
DM Fast Loader
)是
DM
提供的快速数据装载命令行工具。
能够把按照一定格式排序的文本数据, 高效的方式载入到
DM 数 据库中,
或把
DM
数据库中的数据,按照一定格式写入文本文件。
![](https://i-blog.csdnimg.cn/blog_migrate/8d105c96d935cc7061ba2548ea67f4f5.png)
如图所示,
dmfldr
实际上除了客户端工具,
还包含一个在数据库服务器中的 dmfldr 功能模块,
它们共同完成
dmfldr
的各项功能。
安装好
DM
数据库管理系统后,在安装目录的“
bin
”子目录下可找到
dmfldr
执行文
件。
dmfldr 指定参数的格式为: dmfldr keyword=value [keyword=value ...]
使用“
dmfldr help”查看各参数的简 单信息
dmfldr help
格式
: DMFLDR KEYWORD=value
例程
: DMFLDR SYSDBA/SYSDBA CONTROL='c:\fldr.ctl'
USERID 必须是命令行中的第一个参数,CONTROL
必须是命令行中的第二个参数,
字符串类型参数必须以引号封闭。
USERID
必须是第一个参数,
CONTROL
必须是第二个参数,这两个参数都
不能省略;
其余参数均为可选参数,可以不指定,指定时也无顺序要求
控制文件
CONTROL
是启动
dmfldr必须要指定的参数,用于指定数据文件中数据的格式。
数据载入时,
dmfldr
根据控制文件指定的格式,来解析数据文件;
导出数据时,dmfldr
也会根据控制文件指定的列分隔符、行分隔符等生成数据文件。
[OPTIONS(
<id>=<value>
……
)]
LOAD [DATA]
INFILE < <file_option>|<directory_option> >
[BADFILE <path_name>]
[APPEND|REPLACE|INSERT]
<into_table_clause>
<id> ::=
参数
<value> ::=
值
例:一个
dmfldr
控制文件的例子
OPTIONS
(
SKIP = 0
ROWS = 50000
DIRECT = TRUE
INDEX_OPTION = 2
)
LOAD DATA
INFILE '/opt/data/test1.txt' STR X '0A'
BADFILE '/opt/data/test1.bad'
INTO TABLE test1
FIELDS '|'
(
F1,
F2 DATE FORMAT 'YYYY-MM-DD',
F3 NULL,
F4 TERMINATED BY WHITESPACE ENCLOSE BY '(',
F5 CONSTANT "test",
F6 "trim()"
)
LOAD DATA
INFILE '/opt/data/test2.txt' STR X '0A'
BADFILE '/opt/data/test2.bad'
INTO TABLE test2
FIELDS '|'
(
C1 TERMINATED BY ' ',
C2,
C3 DATE FORMAT 'yyyy-mm-dd'
)
在这个例子中:
OPTIONS
选项中定义了
SKIP
、
ROWS
、
DIRECT
和
INDEX_OPTION
参数
有两个
LOAD
选项,表明有一次装载同时处理两个表,在每个
LOAD
选项中:
指定了数据文件和数据文件的换行符,还指定了
BADFILE
文件
指定了操作的数据库基表、列分隔符以及列定义