Oracle® Fusion Middleware Oracle Data Integrator接続およびナレッジ・モジュール・ガイド 12c (12.2.1.2.0) E82656-01 |
|
![]() 前 |
![]() 次 |
この章では、Oracle Data IntegratorでのMicrosoft Excelの使用方法について説明します。
この章には次の項が含まれます:
Oracle Data Integrator (ODI)では、保存されているデータがMicrosoft Excelのワークブックに統合されます。これにより、リバース・エンジニアリングと、スプレッドシートでの読取りおよび書込みの操作が可能になります。
Oracle Data Integratorでは、Open Database Connectivity (ODBC)を使用してMicrosoft Excelデータ・サーバーに接続します。詳細は、8.2.3項「接続性要件」を参照してください。
各Microsoft Excelデータ・サーバーは、ローカル・ネットワーク経由でアクセス可能な1つのMicrosoft Excelワークブック(.xls
ファイル)に対応します。このデータ・サーバーにの下に単一の物理スキーマが作成されます。
このスキーマ内で、1つのスプレッドシート、またはワークブックの特定の名前付き領域が、Oracle Data Integrator内の1つのデータストアとして表示されます。
Oracle Data Integratorには、Microsoft Excelテクノロジ固有のナレッジ・モジュール(KM)は用意されていません。汎用SQL KMを使用して、Microsoft Excelデータのデータ統合および変換の操作を実行できます。詳細は、第4章「汎用SQL」を参照してください。
注意: Excelテクノロジをステージング領域として使用することはできず、増分更新およびフロー/静的チェックはサポートされません。このため、Excelテクノロジでは次のKMは機能しません。
|
Microsoft Excelナレッジ・モジュールの使用を開始する前に、この項の情報を必ず読んでください。
インストールを実行する前に、システム要件および動作要件のドキュメントを読んで、使用する環境がインストールする製品の最低インストール要件を満たすことを確認する必要があります。
サポートされているプラットフォームおよびバージョンのリストには、次のOracle Technical Network (OTN)からアクセスできます。
http://www.oracle.com/technology/products/oracle-data-integrator/index.html
Oracle Data IntegratorでMicrosoft Excelファイルを使用するためのテクノロジ固有の要件はありません。
この項では、Microsoft Excelワークブックに接続するための要件をリストします。
Microsoft Excelデータにアクセスするための要件は次のとおりです。
Microsoft Excel ODBCドライバのインストール
Microsoft Excelワークブックにアクセスできるのは、ODBC接続を使用した場合のみです。使用するシステムに、Excel用ODBCドライバがインストールされている必要があります。
Microsoft Excel ODBCデータソースの宣言
ODBCデータソースは、ODIからアクセスするそれぞれのMicrosoft Excelワークブック(.xls
ファイル)に対して定義する必要があります。ODBCデータソースは、Microsoft ODBCデータソース・アドミニストレータで作成します。データソースの作成方法は、Microsoft Windowsオペレーティング・システムのドキュメントを参照してください。3.5.2.4項「カスタマイズされたリバース・エンジニアリング」の「Excelスプレッドシート用のODBCデータソースの作成」も参照してください。
トポロジの設定には次が含まれます。
各Microsoft Excelデータ・サーバーは、ローカル・ネットワーク経由でアクセス可能な1つのMicrosoft Excelワークブック(.xls
ファイル)に対応します。
『Oracle Data Integratorでの統合プロジェクトの開発』のデータ・サーバーの作成に関する項の説明に従って、標準の手順を使用してMicrosoft Excelテクノロジ用のデータ・サーバーを作成します。この項では、Microsoft Excelデータ・サーバーの定義に関する必須または固有のフィールドのみについて説明します。
「定義」タブ:
配列フェッチ・サイズ: 0
バッチ更新サイズ: 1
「JDBC」タブ:
JDBCドライバ: Excel用の適切なJDBCドライバを選択します。
JDBC URL: 選択されたJDBCドライバに必要なURLを入力します。
警告: ODBC経由でMicrosoft Excelワークブックにアクセスするには、まず、そのワークブックがMicrosoft Excelセッションで現在開いていないことを確認する必要があります。開いている場合、予期しない結果につながる可能性があります。 |
『Oracle Data Integratorの管理』の物理スキーマの作成に関する項の説明に従って、標準の手順を使用してMicrosoft Excel物理スキーマを作成します。
Oracle Data Integratorで必要な物理スキーマは、各Microsoft Excelデータ・サーバーに対して1つのみであることに注意してください。異なるワークブックに接続する場合は、そのワークブックに対応するODBCデータソースに接続するために、異なるデータ・サーバーを作成する必要があります。
『Oracle Data Integratorの管理』の論理スキーマの作成に関する項の説明に従って、標準の手順を使用してこの物理スキーマ用の論理スキーマを作成し、特定のコンテキストで関連付けます。
注意: Excel物理スキーマには作業スキーマはなく、データ・スキーマのみがあります。Microsoft Excelは、マッピングのステージング領域としては使用できません。 |
Microsoft Excelを使用してプロジェクトを設定するには、標準の手順に従います。『Oracle Data Integratorでの統合プロジェクトの開発』の統合プロジェクトの作成に関する項を参照してください。
Microsoft Excelでの作業を開始するにあたり、使用するプロジェクトに次の汎用SQL KMをインポートします。
LKM SQL to SQL
IKM SQL to SQL Append
これらのKMの詳細は、第4章「汎用SQL」を参照してください。
この項には次のトピックが含まれます:
Microsoft Excelモデルは、Microsoft Excelワークブック内の表に対応するデータストアのセットです。
『Oracle Data Integratorでの統合プロジェクトの開発』のモデルの作成に関する項の説明に従って、標準の手順を使用してMicrosoft Excelモデルを作成します。
Microsoft Excelでは、ODBCドライバの機能のみを使用する標準のリバース・エンジニアリングがサポートされています。
Oracle Data Integratorによるリバース・エンジニアリングの対象は次のとおりです。
スプレッドシート: スプレッドシートはシステム表として表示されます。それぞれの表の名前にはスプレッドシートの名前が使用され、最後にドル記号($)が付きます。この表の列には、スプレッドシートの最初の行の名前が付けられます。新規レコードはスプレッドシートの最後に追加されます。
スプレッドシートの名前付きセル範囲。これらは、セル範囲名と同じ名前の表として表示されます。名前の有効範囲によっては、表名の接頭辞としてスプレッドシートの名前が使用される場合があります(書式: <spreadsheet_name>$<zone_name>
)。この場合の表の列名は、セル範囲の最初の行と同じになります。新規レコードは、名前付きセルの下に自動的に追加されることに注意してください。最初のヘッダー行のみを含むセル範囲に名前を付けることによって、ODIを使用してロードされる空の名前付きセル範囲を作成できます。
Microsoft Excelのほとんどのバージョンでは、単純にセル範囲を選択してから「範囲に名前を付ける」ポップアップ・メニューを使用して、その範囲に名前を付けることができます。名前に関する概念情報およびスプレッドシートのセル範囲の定義方法は、Microsoft Excelのドキュメントを参照してください。
標準のリバース・エンジニアリング
Microsoft Excelで標準のリバースエンジニアリングを実行するには、『Oracle Data Integratorでの統合プロジェクトの開発』のモデルのリバースエンジニアリングに関する項の説明に従って、通常の手順を使用します。
注意: モデルの「リバース・エンジニアリング」タブの「リバース・エンジニアリングするオブジェクトの型」セクションで、スプレッドシートおよび名前付きセル範囲をリバース・エンジニアリングするために「表」および「システム表」を選択します。 |
Microsoft Excelファイルは、マッピングのソースまたはターゲットとして使用できますが、ステージング領域としては使用できません。
マッピングまたはチェック用に選択したKMによって、このマッピングまたはチェックの機能およびパフォーマンスが決まります。この項に示す推奨事項は、Microsoft Excelサーバーに関連する様々な状況でのKMの選択に役立ちます。
マッピングのソースまたはターゲットとしてMicrosoft Excelを使用できます。マッピング・フロー・タブでの、Microsoft Excelと別のタイプのデータ・サーバー間でデータをロードするためのLKMの選択は、マッピングのパフォーマンスに関してきわめて重要です。
Oracle Data Integratorには、Microsoft Excel専用のナレッジ・モジュールは用意されていません。汎用SQL KMまたはステージング領域として使用するテクノロジ固有のKMを使用してください。次の表に、Microsoft Excelから任意のステージング領域へのデータのロードに使用できる汎用SQL KMの一部をリストします。
表8-1 Microsoft ExcelからロードするためのKM
ターゲットまたはステージング領域 | KM | 説明 |
---|---|---|
Oracle |
LKM SQL to Oracle |
任意のISO-92データベースからOracleターゲット・データベースへデータをロードします。統計を使用します。 |
SQL |
LKM SQL to SQL |
ISO-92データベースからISO-92準拠のターゲット・データベースにデータをロードします。 |
Microsoft SQL Server |
LKM SQL to MSSQL (bulk) |
任意のISO-92データベースからMicrosoft SQL Serverターゲット・データベースへデータをロードします。バルク・ロードを使用します。 |
Microsoft Excelはステージング領域として使用できないため、LKMを使用してMicrosoft Excelにデータをロードすることはできません。Microsoft Excelへのデータの統合方法は、8.6.2項「Microsoft Excelでのデータの統合」を参照してください。
Oracle Data Integratorには、Microsoft Excel専用のナレッジ・モジュールは用意されていません。汎用SQL KMまたはステージング領域として使用するテクノロジ固有のKMを使用してください。ステージング領域からMicrosoft Excelへデータを統合するには、IKM SQL to SQL Appendなどを使用できます。
この項では、Oracle Data IntegratorでのMicrosoft Excelテクノロジの使用時に発生する可能性がある問題のトラブルシューティングに関する情報を提供します。この章の内容は、次のとおりです。
通常、Oracle Data Integratorではエラーは次のように表示されます。
java.sql.SQLException: java.sql.SQLException: [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified RC=Oxb at ... ...
このjava.sql.SQLExceptionコードは、JDBC-ODBCブリッジを介して問合せが行われ、エラーが戻されたことを単純に示しています。このエラーはデータベースまたはドライバのエラーであることが多く、次のように解明する必要があります。
まず、イタリック体のテキスト部分のみに注目してください。これは、ODBCドライバまたはExcelのドキュメントで検索する必要があります。ここで太字のイタリック体で示されているように、固有のエラー・コードが含まれている場合は、エラーをすばやく識別できます。
このようなエラーが実行ログで検出された場合は、SQLコードを分析してエラーの原因を特定する必要があります。このコードは、エラーのあるタスクの「説明」タブに表示されます。
Excelの最も一般的なエラーおよび主な原因について、次項で説明します。
この項では、一般的な問題および解決策について説明します。
[Microsoft][ODBC Excel Driver] Invalid SQL statement; expected 'DELETE', 'INSERT', 'PROCEDURE', 'SELECT', or 'UPDATE'.
このエラーは、インストールされたODBCドライバの機能的制限によるものである可能性があります。Microsoft Office同梱のデフォルトODBCドライバなど、完全版のODBCドライバをインストールする必要があるかもしれません。
Invalid Fetch Size
ODIに定義されているMicrosoft Excelデータ・サーバーの配列フェッチ・サイズが0に設定されていることを確認してください。
[Microsoft][ODBC Excel Driver] Could not decrypt file.
パスワード保護されたMicrosoft Excelワークブックを、使用するJDBC-ODBC接続に対して開いたままとする必要があるかもしれません。
UnknownDriverException
JDBCドライバが不正です。ドライバの名前を確認してください。
[Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified RC=0xb Datasource not found or driver name not specified
JDBC URLで指定されたODBCデータソースが不正です。
The Microsoft Jet Database engine could not find the object <object name>
アクセスしようとしている表が存在しないか、Excelスプレッドシートで定義されていません。
Too few parameters. Expected 1.
Excelスプレッドシートに存在しない列にアクセスしようとしています。
Operation must use an updateable query.
このエラーは通常、Excel DSNの定義時に読取り専用オプションを選択解除しなかった場合に発生します。このオプションを選択解除して、マッピングを再実行してください。