欢迎光临
我们一直在努力

sqlldr的用法

oracle数据库中导入txt文本方法,如现在需要将t_user_mobile_list.txt中的数据导入到oracle数据库t_user_mobile_list表中。

 

 

 

1. 首先需要ctl文件

 

ctl文件格式如下:

load data            

infile *

Append into table t_user_mobile_list —插入的表名称

FIELDS TERMINATED BY ‘,’—文件以,分割 FIELDS TERMINATED BY WHITESPACE 空格分隔

TRAILING NULLCOLS    —表的字段没有对应的值时允许为空

( subid,

smbms,

productcat,

sub_type,

create_time date “YYYY-MM-DD HH24:MI:SS”, —-data类型字段需要制定格式

part,

submit_flag,  

name )

 

如果对应的字段为空,则可以不在对应列中出现!

 

2. 执行Sqlldr命令

sqlldr userid=”smb/czty_smb@zsms”—–指定数据库

 control=”t_user_mobile_list.ctl”—-第一步生产的ctl文件

 data=”t_user_mobile_list.txt”  —–需要导入的txt文件

 log=t_user_mobile-list.log ——-将信息写到日志中

 

 

注意:

1. 执行该命令时,要将导入的文件和crl文件在同一个目录下

2. Sqlldr一次只能导入500w行,如果导入文件超过500w行,先将该文件分割成多个文件再执行。分割命令:split  文件名 -l 3000000  fee(前缀)将该文件按300w行分成N个文件

 

Shell脚本执行

 

Ctl文件

 

 

文件

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。