Создадим таблицу:
create table username.table_name (
field1 varchar2(10),
field2 varchar2(10),
field3 varchar2(10),
)
Содержимое источника table.csv:
field1 field2 field3
qwe asd zxc
sdf 345 56745
bvn ury 78
Содержимое контроллера loader.ctl:
load data
infile '/opt/oracle/table.csv'
into table table_name
fields terminated by "t"
(
field1,
field2,
field3
)
Если нужно добавить данные, тогда так:
load data
infile '/opt/oracle/table.csv'
append
into table table_name
fields terminated by "t" (
field1,
field2,
field3
)
Как показала практика после строки load data нужно всегда делать отступ в 1 пробел с начала каждой следующей строки, иначе sqlldr будет отображать ошибку импорта.
Выполним операцию импорта:
sqlldr username@server control=loader.ctl
Допустим нужно пропустить 1ю строку, в которой обычно записывают название колонок. тогда пишем так:
sqlldr username@server control=loader.ctl skip=1