简单模板
OPTIONS (skip=1,rows=128) -- sqlldr 命令显示的 选项可以写到这里边来,skip=1 用来跳过数据中的第一行
LOAD DATA
INFILE "users_data.csv" --指定外部数据文件,可以写多 个 INFILE "another_data_file.csv" 指定多个数据文件
--这里还可以使 用 BADFILE、DISCARDFILE 来指定坏数据和丢弃数据的文件,
truncate --操作类型,用 truncate table 来清除表中原有 记录
INTO TABLE users -- 要插入记录的表
Fields terminated by "," -- 数据中每行记录用 "," 分隔
Optionally enclosed by '"' -- 数据中每个字段用 '"' 框起,比如字段中有 "," 分隔符时
trailing nullcols --表的字段没有对应的值时允 许为空
(
virtual_column FILLER, --这是一个虚拟字段,用来跳 过由 PL/SQL Developer 生成的第一列序号
user_id number, --字段可以指定类型,否则认 为是 CHARACTER 类型, log 文件中有显示
user_name,
login_times,
last_login DATE "YYYY-MM-DD HH24:MI:SS", -- 指定接受日期的格式,相当用 to_date() 函数转换
hiredate "to_date(:hiredate,'yyyy/mm/dd')"
)
log – 记录导入时的日志文件,默认为 控制文件(去除扩展名).log
bad – 坏数据文件,默认为 控制文件(去除扩展名).bad
data – 数据文件,一般在控制文件中指定。用参数控制文件中不指定数据文件更适于自动操作
errors – 允许的错误记录数,可以用他来控制一条记录都不能错
rows – 多少条记录提交一次,默认为 64
skip – 跳过的行数,比如导出的数据文件前面几行是表头或其他描述
导入方式
************* 以下是4种装入表的方式
APPEND // 原先的表有数据 就加在后面
INSERT // 装载空表 如果原先的表有数据 sqlloader会停止 默认值
REPLACE // 原先的表有数据 原先的数据会全部删除
TRUNCATE // 指定的内容和replace的相同 会用truncate语句删除现存数据