首页 > 代码库 > sqlldr的用法

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 ‘,‘---文件以,分割

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="http://www.mamicode.com/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文件

技术分享

 

 

文件


技术分享

sqlldr的用法