犬ターネット
OracleでCSVインポート
2019年01月30日 #oracle

コントロールファイルを作り、sqlldr コマンドでインポート可能。

コントロールファイル (control.txt)は以下のような形式。

LOAD DATA
INFILE test_table.csv
APPEND
INTO TABLE test_table
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"'
TRAILING NULLCOLS
(COLUMN1, COLUMN2, COLUMN3)

CSV (test_table.csv)は以下のような形式。

1,テスト1,あいうえお
2,テスト2,かきくけこ
3,テスト3,さしすせそ

実行するコマンドは以下のような形式。SIDは環境によって書き換える。

sqlldr 接続ユーザ名/接続パスワード@SID control=control.txt

# 実際は以下のような感じ
sqlldr databaseuser/databaseuserpass@192.168.0.50:1521/DB control=control.txt

餅、ボヘミアンラプソディ、カニ
libclntsh.so.12.1: cannot open shared object file