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="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脚本执行

wKioL1fG1FmjPfE8AAAsdGUGUko752.png-wh_50

Ctl文件

wKioL1fG1GPT_u4IAAAj2Lzjyps857.png-wh_50

文件


wKiom1fG1HSwG6esAAA-l59zddo115.png-wh_50

相关文章

文章浏览阅读773次,点赞6次,收藏9次。【代码】c# json字符...
文章浏览阅读8.7k次,点赞2次,收藏17次。此现象一般定位到远...
文章浏览阅读2.8k次。mysql脚本转化为oracle脚本_mysql建表语...
文章浏览阅读2.2k次。cx_Oracle报错:cx_Oracle DatabaseErr...
文章浏览阅读1.1k次,点赞38次,收藏35次。本文深入探讨了Or...
文章浏览阅读1.5k次。默认自动收集统计信息的时间为晚上10点...