sqldr 简单实用
1、导出csv文件
2、 建立一个控制文件 gh_qygsgz.ctl,内容如下:
options(skip=1,rows=128)skip用来跳过数据第一行
LOAD DATA
INFILE "E:/gh_qygsgz.csv" --指定外部数据文件,可以写多 个 INFILE "another_data_file.csv" 指定多个数据文件
--这里还可以使 用 BADFILE、DISCARDFILE 来指定坏数据和丢弃数据的文件,
truncate --操作类型,用 truncate table 来清除表中原有 记录
INTO TABLE gh_qygsgz -- 要插入记录的表
Fields terminated by "," -- 数据中每行记录用 "," 分隔
Optionally enclosed by '"' -- 数据中每个字段用 '"' 框起,比如字段中有 "," 分隔符时
trailing nullcols --表的字段没有对应的值时允 许为空
(
--这是一个虚拟字段,用来跳 过由 PL/SQL Developer 生成的第一列序号
GZDM ,
QYBM ,
SKSSN ,
SKSSY ,
ZGRS ,
GZZE ,
CZSJ DATE "YYYY-MM-DD HH24:MI:SS" -- 指定接受日期的格式,相当用 to_date() 函数转换
)
说 明:在操作类型 truncate 位置可用以下中的一值:
1) insert --为缺省方式,在数据装载开始时要求表为空
2) append --在表中追加新记录
3) replace --删除旧记录(用 delete from table 语句),替换成新装载的记录
4) truncate --删除旧记录(用 truncate table 语句),替换成新装载的记录
3、 执行命令:sqlldr userid=bim_dev/bim_dev@ip:1521/ounion control='gh_qygsgz.ctl' log='abc.log'