标签:
最近由于需要造很多相似的数据,所以研究了一下Sqlloader这个工具。
这个工具对于大量的数据插入有很大帮助。
具体用法:
常使用的关键字:
userid -- ORACLE username/password
control -- Control file name
log -- Log file name
bad -- Bad file name
data -- Data file name
skip -- Number of logical records to skip (默认0)
load -- Number of logical records to load (全部默认)
errors -- Number of errors to allow (默认50)
使用方法:
生成控制文件control = result.ctl
控制文件中存储的是表的结构。如下:
load data infile ‘TEST.CSV‘ into table TEST APPEND ( PNAME CHAR terminated by ‘,‘, AGE CHAR terminated by ‘,‘, ADDR CHAR terminated by ‘,‘, PID CHAR terminated by ‘,‘, PHONE CHAR terminated by WHITESPACE )
其中,infile表示数据存储的文件,这里是以逗号分隔符的文件,into table表示要插入的表,APPEND 表示以追加方式插入,其他方式还有:insert--->默认方式,但是前提是表必须是空的,replace--->删除旧数据,插入新的,truncate---->先清空表,再插入。
一般错误:
如:在逻辑记录结束之前未找到列(使用 TRAILING NULLCOLS)
表示你的控制文件中的列数,和数据文件中的列数不匹配,而且还没有指定TRAILING NULLCOLS参数,导致部分列无法插入,这种情况首先要检查控制文件和数据文件,然后再考虑是否需要添加TRAILING NULLCOLS参数。(加在控制文件中)
标签:
原文地址:http://www.cnblogs.com/IDECIDETODOIT/p/4603593.html