OLE DB 変換先

OLE DB 変換先は、データベースのテーブルやビュー、または SQL コマンドを使用して、OLE DB に準拠するさまざまなデータベースにデータを読み込みます。 たとえば、OLE DB ソースにより、Microsoft Office Access および SQL Server のデータベースのテーブルからデータを読み込むことができます。

注意

データ ソースが Microsoft Office Excel 2007 である場合、Excel の以前のバージョンとは異なる接続マネージャーが必要になります。 詳細については、「Excel ブックに接続する」を参照してください。

OLE DB 変換先には、データを読み込むために、次の 5 つの異なるデータ アクセス モードが用意されています。

  • テーブルまたはビュー。 既存のテーブルまたはビューを指定できます。または、新しいテーブルを作成できます。

  • テーブルまたはビュー (高速読み込みオプションを使用)。 既存のテーブルを指定できます。または新しいテーブルを作成できます。

  • 変数で指定されたテーブルまたはビュー。

  • 変数で指定されたテーブルまたはビュー (高速読み込みオプションを使用)。

  • SQL ステートメントの結果。

注意

OLE DB 変換先ではパラメーターがサポートされません。 パラメーター化された INSERT ステートメントを実行する必要がある場合は、OLE DB コマンド変換を検討してください。 詳細については、「OLE DB コマンド変換」を参照してください。

OLE DB 変換先で 2 バイト文字セット (DBCS) を使用するデータを読み込む際に、データ アクセス モードで高速読み込みオプションを使用せず、OLE DB 接続マネージャーが Microsoft OLE DB Provider for SQL Server (SQLOLEDB) を使用している場合、そのデータは破損する可能性があります。 DBCS データの整合性を保持するには、OLE DB 接続マネージャーで SQL Server Native Client を使用するように構成するか、[テーブルまたはビュー - 高速読み込み] または [テーブル名またはビュー名の変数 - 高速読み込み] のうちいずれかの高速読み込みモードを使用する必要があります。 どちらのオプションも、[OLE DB 変換先エディター] ダイアログ ボックスから使用できます。 SSIS オブジェクト モデルをプログラミングする際は、AccessMode プロパティを OpenRowset Using FastLoad または OpenRowset Using FastLoad From Variable に設定する必要があります。

注意

SSIS デザイナーの [OLE DB 変換先エディター] ダイアログ ボックスを使用して、OLE DB 変換先がデータを挿入する変換先テーブルを作成する際に、新しく作成したテーブルを手動で選択する必要がある場合があります。 手動で選択する必要があるのは、OLE DB provider for DB2 などの OLE DB プロバイダーが、スキーマの識別子を自動的にテーブル名に追加した場合です。

注意

変換先の種類に応じて、[OLE DB 変換先エディター] ダイアログ ボックスによって生成される CREATE TABLE ステートメントの変更が必要になる場合があります。 たとえば、変換先によっては CREATE TABLE ステートメントで使用されるデータ型をサポートしない場合もあります。

OLE DB 変換先は、OLE DB 接続マネージャーを使用してデータ ソースに接続します。OLE DB 接続マネージャーでは、使用する OLE DB プロバイダーを指定します。 詳細については、「OLE DB 接続マネージャー」を参照してください。

Integration Services プロジェクトでは、OLE DB 接続マネージャーを作成できるデータ ソース オブジェクトも用意されています。このオブジェクトは、データ ソースとデータ ソース ビューを OLE DB 変換先で使用できるようにします。

OLE DB 変換先には、入力列と変換先データ ソースの列との間のマッピングが含まれています。 入力列をすべての変換先列にマップする必要はありませんが、変換先列のプロパティによっては、変換先列にマップされる入力列がない場合、エラーが発生することがあります。 たとえば、変換先列で NULL 値が許容されていない場合は、入力列をその列にマップする必要があります。 また、マップされる列のデータ型には互換性がある必要があります。 たとえば、文字列データ型の入力列を数値データ型の変換先列にマップすることはできません。

OLE DB 変換先は、1 つの標準入力と 1 つのエラー出力をとります。

データ型の詳細については、「Integration Services のデータ型」を参照してください。

高速読み込みオプション

OLE DB 変換先で高速読み込みデータ アクセス モードが使用される場合、[OLE DB 変換先エディター] というユーザー インターフェイスで、変換先に対して次の高速読み込みオプションを指定できます。

  • インポートしたデータ ファイルの ID 値を保持します。または、SQL Server によって割り当てられた一意の値を使用します。

  • 一括読み込み操作中に、NULL 値を保持します。

  • 一括インポート操作中に、インポート先のテーブルまたはビューに対して CHECK 制約を実行します。

  • 一括読み込み操作中に、テーブルレベルのロックを取得します。

  • バッチの行数およびコミット サイズを指定します。

一部の高速読み込みオプションは、OLE DB 変換先の特定のプロパティに格納されています。 たとえば、ID 値を保持するかどうかを指定する FastLoadKeepIdentity、NULL 値を保持するかどうかを指定する FastLoadKeepNulls、バッチとしてコミットする行数を指定する FastLoadMaxInsertCommitSize などがあります。 その他の高速読み込みオプションは、FastLoadOptions プロパティのコンマ区切りリストで格納されます。 OLE DB 変換先で、FastLoadOptions に格納されている高速読み込みオプションと [OLE DB 変換先エディター] ダイアログ ボックスに一覧表示されている高速読み込みオプションをすべて使用する場合は、このプロパティの値を TABLOCK, CHECK_CONSTRAINTS, ROWS_PER_BATCH=1000 に設定します。 値 1000 を設定すると、1,000 行のバッチを使用するように変換先が構成されます。

注意

変換先で制約が失敗すると、FastLoadMaxInsertCommitSize で定義された行数のバッチ全体が失敗します。

[OLE DB 変換先エディター] ダイアログ ボックスで公開される高速読み込みオプションに加えて、[詳細エディター] ダイアログ ボックスで、FastLoadOptions プロパティに次の一括読み込みオプションを入力することにより、それらのオプションを使用するように OLE DB 変換先を構成できます。

高速読み込みオプション

説明

KILOBYTES_PER_BATCH

挿入するサイズを KB 単位で指定します。 このオプションの形式は、KILOBYTES_PER_BATCH = <正の整数> です。

FIRE_TRIGGERS

挿入テーブルでトリガーを起動するかどうかを指定します。 このオプションの形式は、FIRE_TRIGGERS です。 このオプションが指定されている場合は、トリガーが起動されます。

ORDER

入力データの並べ替え方法を指定します。 このオプションの形式は、ORDER <列名> ASC|DESC です。 並べ替える列のリストには任意の数列を指定できます。並べ替え順序の指定は省略することもできます。 並べ替え順序を指定しなかった場合は、データを並べ替えないと見なして挿入操作が実行されます。

注意

ORDER オプションを使用してテーブル上のクラスター化インデックスに従って入力データを並べ替えると、パフォーマンスが向上する可能性があります。

Transact-SQL キーワードは慣例として通常は大文字で入力しますが、これらのキーワードの大文字小文字は区別されません。

高速読み込みオプションの詳細については、「BULK INSERT (Transact-SQL)」を参照してください。

OLE DB 変換先のトラブルシューティング

OLE DB 変換先による外部データ プロバイダーの呼び出しをログに記録できます。 このログ機能を使用すると、OLE DB 変換先による外部データ ソースへのデータ保存に関するトラブルシューティングを行うことができます。 OLE DB 変換先による外部データ プロバイダーの呼び出しのログを記録するには、パッケージ ログ記録を有効にして、パッケージ レベルで Diagnostic イベントを選択します。 詳細については、「パッケージ実行のトラブルシューティング ツール」を参照してください。

OLE DB 変換先の構成

プロパティを設定するには SSIS デザイナーから行うか、またはプログラムによって設定します。

[OLE DB 変換先エディター] ダイアログ ボックスで設定できるプロパティの詳細については、次のトピックのいずれかを参照してください。

[詳細エディター] ダイアログ ボックスには、プログラムによって設定できるプロパティが反映されます。 [詳細エディター] ダイアログ ボックスまたはプログラムで設定できるプロパティの詳細については、次のトピックのいずれかを参照してください。

プロパティの設定方法の詳細については、次のトピックのいずれかを参照してください。

関連コンテンツ

OLE DB ソース

Integration Services (SSIS) の変数

データ フロー

Integration Services のアイコン (小) 最新の Integration Services の入手

マイクロソフトが提供する最新のダウンロード、アーティクル、サンプル、ビデオ、およびコミュニティで選択されたソリューションについては、MSDN の Integration Services のページを参照してください。


これらの更新が自動で通知されるようにするには、ページの RSS フィードを定期受信します。