数据加载工具EDB_Loader应用测试
什么是EDB*Loader?
EDB * Loader是一种高性能的批量数据加载器,它提供EDB Advanced Server与Oracle数据库兼容的接口,功能包括:
1、支持Oracle SQL * Loader数据加载方法-常规路径加载,直接路径加载和并行直接路径加载;
2、与Oracle SQL * Loader兼容的控制文件指令的语法;
3、输入数据,以定界符分隔或固定宽度的字段;
4、收集拒绝记录的文件错误;
5、加载多个目标表;
EDB*Loader 常用参数
[root@192 bin]# /usr/edb/as11/bin/edbldr --help edbldr is a DIRECT PATH bulk data loading tool for EnterpriseDB
Usage:
Data Load : edbldr [-d DBNAME] [-p PORT] userid={dbuser[/dbpass]|/} direct={true|false} parallel={true|false} control=control_file_name log=log_file_name errors=num_errors skip_index_maintenance={true|false} skip=num_skips bad=bad_file_name parfile=par_file_name freeze={true|false}
Options for data load:
-d DBNAME database name
-h HOSTNAME database server to connect to
-p PORT port number to connect to
If these options are omitted, corresponding environment variables are used.
If the environment variables are also not available, this tool tries to use internal default values.
Keywords for data load:
userid -- username/password
direct -- use direct path for data load
parallel -- allow parallel data load
control -- name of the control file
log -- name of the log file
data -- name of the data file
discard -- name of the discard file
errors -- number of errors to tolerate before aborting the load
discardmax -- number of discards to tolerate before aborting the load
skip_index_maintenance -- skip index maintenance
skip -- number of initial input rows to skip during the load
bad -- name of the bad file
parfile -- name of the parameters file
edb_resource_group -- name of the resource group to be associated with
freeze -- load the data with rows already frozen
Other options:
--help, -? show this help information
--version, -V show version information
测试
1、建表语句
Create table emp (empno int,
ename varchar2(100),
job varchar2(100),
mgr varchar2(100),
hiredate date,
sal number(6,2),
deptno int,
comm number(6,2)
);
2、控制文件的几种不同写法,以及数据的加载
数据入库效果图:
测试结论
EDB*Loader重点在控制文件上,测试了几种控制文件的写法:
A、定界符分隔的字段数据文件;
B、定宽字段数据文件;
C、单个物理记录数据文件–记录由条款界定;
D、FILLER子句的用法;
数据加载时应用写好的控制文件;