SQL*Loaderとは

この記事ではSQL*Loaderとは何かについて解説します。

 SQL*Loaderとは

SQL*LoaderとはOracle Database以外のデータベースや外部ファイルからデータをロードすることができるツールです。

Oracle Database付属のツールのなので、特にインストール等の必要もなく使用することができます。

大量のデータを高速にロードすることができるのが特徴です。


 SQL*Loaderのファイル構成

SQL*Loaderは以下のファイルを使用して動作します。

・入力データファイル

ロードしたいデータが記載されたファイルです。

・制御ファイル

データをロードするために必要な情報を記載します。

Oracle Databaseの制御ファイルとは別物です。

・不良ファイル

エラーによってロードされなかったデータの情報が記載されるファイルです。

・廃棄ファイル

エラー以外でロードされなかったデータの情報が記載されるファイルです。

・ログファイル

データのロード状況などのログが記載されるファイルです。


 SQL*Loaderのモード

SQL*Loaderには3つのモードが用意されており、用途によって使い分けることができます。

・従来型のロード

INSERT文を使用してロードしていく方法です。

REDOログも生成されます。

・ダイレクトパスロード

直接データファイルに書き込みを行いロードする方式です。

従来型の方式より高速にロードができます。

・エクスプレスモード

12cより使用できるモードです。

制御ファイルが不要で簡単に使用できるモードです。

入力データファイル名とロードする表の名前が一致している必要があります。