博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用sqlloader向oracle导入文本数据
阅读量:5347 次
发布时间:2019-06-15

本文共 1017 字,大约阅读时间需要 3 分钟。

文本文件如下,注意文件名必须有后缀,文本行首也需要|分隔符:

[oracle@ycr test]$ more person.txt
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
|aaa|123|m
创建表:
SQL> create table person (name varchar2(6),num varchar2(5),gender varchar2(3));
Table created.
编写控制文件input.ctl:
OPTIONS (skip=1)
LOAD DATA
INFILE "person.txt"
truncate
INTO TABLE person -- 要插入记录的表
Fields terminated by "|"
trailing nullcols --表的字段没有对应的值时允许为空
(
    virtual_column FILLER, --这是一个虚拟字段,用来跳过由 PL/SQL Developer 生成的第一列序号
    name,
    num,
    gender
)
导入:
sqlldr test/oracle@ycr2 control=input.ctl
另外如果实际列中比平面文件中列数多,可在控制文件最后多余的列明,比如表中有日期列,但平面文件中没有,可在控制文件列明的最后一条加上如下:
XXXXX     char "trunc(sysdate)"
表示插入当前日期

转载于:https://www.cnblogs.com/Clark-cloud-database/p/7813694.html

你可能感兴趣的文章
好的网站-问卷星
查看>>
git commit -m 与 git commit -am的区别
查看>>
mysql 获得最新的数据并且去除重复
查看>>
OS X EI Capitan 10.11.1快速升级方法介绍
查看>>
BJQA-IIATF1.0框架之《自动生成有效请求Json串》
查看>>
yii自定义行为组件(简介版)
查看>>
字符串包含
查看>>
Code First :使用Entity. Framework编程(1) ----转发 收藏
查看>>
可以展开和收起的的LinearLayout
查看>>
字符编码
查看>>
SQL中文转拼音
查看>>
hashlib 和 hmac
查看>>
[Bob]Collectors Problem
查看>>
python 推导式中多个if else 问题
查看>>
【English】十一、一般疑问句
查看>>
外部程序调用跨数据库的语句时:该事务管理器已经禁止了它对远程/网络事务的支持...
查看>>
Shell脚本中时间处理
查看>>
flume-conf.properties
查看>>
【笔记】css 实现宽度自适应屏幕 高度自适应宽度
查看>>
JS闭包
查看>>