--首先写ctl文件
load Data
infile 'C:\test.txt'
append Into Table test
fields terminated by ',' --分隔符
TRAILING NULLCOLS --字段终止于空行
(
MYID,
MYCHAR
) -- 定义对应的列、
其中append为数据装载方式,还有其他选项:
a、insert,为缺省方式,在数据装载开始时要求表为空
b、append,在表中追加新记录
c、replace,删除旧记录(全部的记录),替换成新装载的记录
d、truncate,同上先删除再新增
--导入文件
sqlldr userid=**/**@orcl control=test.ctl data=test.dat log=test.log bad=test.bad;
qlldr用到的主要参数
1) userid -- ORACLE username/password
2) control –控制文件
3) log –记录的日志文件
4) bad –坏数据文件,记录错误的未加载数据
5) data –数据文件,* data参数只能指定一个数据文件,如果控制文件也通过infile指定了数据文件,并且指定多个,则sqlldr在执行时,先加载data参数指定的数据文件,控制文件中第一个infile指定的数据文件被忽略,但后续的infile指定的数据文件继续有效
6) discard –丢弃的数据文件
7) discardmax –允许丢弃数据的最大值 (默认全部)
8) skip --跳过记录数,从数据文件中,从第一行开始要计算要跳过的行数 (默认0)
9) load -- Number of logical records to load (默认全部)、
10) errors –允许的错误记录数,超过则终止任务(默认50)
11) rows -- Number of rows in conventional path bind array or between direct path data saves(每次提交的记录数,默认:常规路径64,直接路径全部,所以使用直接路径的话,效率会比普通的好太多太多)
12) bindsize -- Size of conventional path bind array in bytes(每次提交记录的缓冲区的大小,字节为单位,默认256000)
13) silent --禁止输出信息(header,feedback,errors,discards,partitions)
14) direct –使用直通路径方式导入(默认FALSE)
如果表中有索引的话,是不能指定direct=TRUE的,除非使用skip_index_maintenance=TRUE,这个就是在导入的时候忽略索引,所以在数据导入完毕以后,查看索引的状态应该都是无效的,需要重建之,如下SQL:select * from dba_indexes where table_name='?' ;
load Data
infile 'C:\test.txt'
append Into Table test
fields terminated by ',' --分隔符
TRAILING NULLCOLS --字段终止于空行
(
MYID,
MYCHAR
) -- 定义对应的列、
其中append为数据装载方式,还有其他选项:
a、insert,为缺省方式,在数据装载开始时要求表为空
b、append,在表中追加新记录
c、replace,删除旧记录(全部的记录),替换成新装载的记录
d、truncate,同上先删除再新增
--导入文件
sqlldr userid=**/**@orcl control=test.ctl data=test.dat log=test.log bad=test.bad;
qlldr用到的主要参数
1) userid -- ORACLE username/password
2) control –控制文件
3) log –记录的日志文件
4) bad –坏数据文件,记录错误的未加载数据
5) data –数据文件,* data参数只能指定一个数据文件,如果控制文件也通过infile指定了数据文件,并且指定多个,则sqlldr在执行时,先加载data参数指定的数据文件,控制文件中第一个infile指定的数据文件被忽略,但后续的infile指定的数据文件继续有效
6) discard –丢弃的数据文件
7) discardmax –允许丢弃数据的最大值 (默认全部)
8) skip --跳过记录数,从数据文件中,从第一行开始要计算要跳过的行数 (默认0)
9) load -- Number of logical records to load (默认全部)、
10) errors –允许的错误记录数,超过则终止任务(默认50)
11) rows -- Number of rows in conventional path bind array or between direct path data saves(每次提交的记录数,默认:常规路径64,直接路径全部,所以使用直接路径的话,效率会比普通的好太多太多)
12) bindsize -- Size of conventional path bind array in bytes(每次提交记录的缓冲区的大小,字节为单位,默认256000)
13) silent --禁止输出信息(header,feedback,errors,discards,partitions)
14) direct –使用直通路径方式导入(默认FALSE)
如果表中有索引的话,是不能指定direct=TRUE的,除非使用skip_index_maintenance=TRUE,这个就是在导入的时候忽略索引,所以在数据导入完毕以后,查看索引的状态应该都是无效的,需要重建之,如下SQL:select * from dba_indexes where table_name='?' ;