Oracle sqlldr 在DOS窗口导入多列数据到数据库表

sqlldr 用法详见:https://www.cnblogs.com/rootq/archive/2009/03/01/1401061.html

测试内容:

1、创建数据库表:

create table test_sqlldr
(
test_id number,
test_phone number,
test_content varchar2(20)
)

2、写sqlldr脚本:

测试内容包含有:控制文件(sqlldr.ctl)、数据文件(test_sqlldr.txt'  )、坏文件(bad_sqlldr.txt)、日志文件(sqlldr1.txt  )等文件。

 2.1、控制文件:

 LOAD DATA
INFILE 'C:\Users\Air\Desktop\test_sqlldr.txt'   --待导入文件位置
BADFILE 'C:\Users\Air\Desktop\bad_sqlldr.txt'   --坏文件存放地址,导入时因异常原因没能进库的数据会保存到该文件
APPEND
INTO table test_sqlldr   --待导入的数据库表
FIELDS TERMINATED BY "," Optionally enclosed by '"'
TRAILING NULLCOLS  --表的字段没有对应值的时候允许为空
(
test_id,test_phone,test_content
)

2.2、测试数据内容:

Oracle sqlldr 在DOS窗口导入多列数据到数据库表

2.3、在DOS窗口执行以下脚本,结果如下图所示:

sqlldr scott/[email protected]:1521/orcl control=C:\Users\Air\Desktop\sqlldr.ctl log=C:\Users\Air\Desktop\sqlldr1.txt   rows=5000

Oracle sqlldr 在DOS窗口导入多列数据到数据库表

2.4、在数据库表中查询数据是否进表(因为像某些数据文件 字段因为数值过大,DOS窗口执行脚本也不会报错,数据便不会入表),测试结果详见下图:

Oracle sqlldr 在DOS窗口导入多列数据到数据库表