Oracle® Fusion Middleware Oracle Data Integrator接続およびナレッジ・モジュール・ガイド 11gリリース1(11.1.1) B62261-01 |
|
戻る |
次へ |
この章では、Oracle Data IntegratorでのMicrosoft Excelの使用方法について説明します。
この章の内容は次のとおりです。
Oracle Data Integrator(ODI)では、Microsoft Excelワークブックに格納されたデータが統合されます。これによって、スプレッドシートでのリバース・エンジニアリング、読取りおよび書込みの操作が可能になります。
Oracle Data Integratorでは、Open Database Connectivity(ODBC)を使用してMicrosoft Excelデータ・サーバーに接続します。詳細は、7.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オペレーティング・システムのドキュメントを参照してください。
トポロジの設定には次が含まれます。
各Microsoft Excelデータ・サーバーは、ローカル・ネットワーク経由でアクセス可能な1つのMicrosoft Excelワークブック(.xls
ファイル)に対応します。
『Oracle Fusion Middleware Oracle Data Integrator開発者ガイド』のデータ・サーバーの作成に関する項に記載されている標準の手順で、Microsoft Excelテクノロジ用データ・サーバーを作成します。この項では、Microsoft Excelデータ・サーバーの定義に関する必須または固有のフィールドのみについて説明します。
「定義」タブ:
配列フェッチ・サイズ: 1
バッチ更新サイズ: 1
「JDBC」タブ:
JDBCドライバ: sun.jdbc.odbc.JdbcOdbcDriver
JDBC URL: jdbc:odbc:<odbc_dsn_alias>
<odbc_dsn_alias>は使用するODBCデータソースの名前です。
警告: ODBC経由でMicrosoft Excelワークブックにアクセスするには、まず、そのワークブックがMicrosoft Excelセッションで現在開いていないことを確認する必要があります。開いている場合、予期しない結果につながる可能性があります。 |
『Oracle Fusion Middleware Oracle Data Integrator開発者ガイド』の物理スキーマの作成に関する項に記載されている標準の手順で、Microsoft Excel物理スキーマを作成します。
Oracle Data Integratorに必要な物理スキーマは、各Microsoft Excelデータ・サーバーに対して1つのみです異なるワークブックに接続する場合は、異なるデータ・サーバーを作成して、そのワークブックに対応するODBCデータソースに接続する必要があります。
『Oracle Fusion Middleware Oracle Data Integrator開発者ガイド』の論理スキーマの作成に関する項に記載されている標準の手順で、この物理スキーマ用の論理スキーマを作成し、特定のコンテキストで関連付けます。
注意: Excel物理スキーマには作業スキーマはなく、データ・スキーマのみがあります。Microsoft Excelは、インタフェースのステージング領域としては使用できません。 |
Microsoft Excelを使用してプロジェクトを設定するには、標準の手順に従います。『Oracle Fusion Middleware Oracle Data Integrator開発者ガイド』の統合プロジェクトの作成に関する項を参照してください。
Microsoft Excelでの作業を開始するにあたり、使用するプロジェクトに次の汎用SQL KMをインポートします。
LKM SQL to SQL
IKM SQL to SQL Append
これらのKMの詳細は、第4章「汎用SQL」を参照してください。
この項の内容は次のとおりです。
Microsoft Excelモデルは、Microsoft Excelワークブック内の表に対応するデータストアのセットです。
『Oracle Fusion Middleware Oracle Data Integrator開発者ガイド』のモデルの作成に関する項に記載されている標準の手順で、Microsoft Excelモデルを作成します。
Microsoft Excelでは、ODBCドライバの機能のみを使用する標準のリバース・エンジニアリングがサポートされています。
Oracle Data Integratorによるリバース・エンジニアリングの対象は次のとおりです。
スプレッドシート: スプレッドシートはシステム表として表示されます。それぞれの表の名前にはスプレッドシートの名前が使用され、最後にドル記号($)が付きます。この表の列には、スプレッドシートの最初の行の名前が付けられます。新規レコードはスプレッドシートの最後に追加されます。
スプレッドシートの名前付きセル範囲。これらは、セル範囲名と同じ名前の表として表示されます。名前の有効範囲によっては、表名の接頭辞としてスプレッドシートの名前が使用される場合があります(書式: <spreadsheet_name>$<zone_name>
)。この場合の表の列名は、セル範囲の最初の行と同じになります。新規レコードは、名前付きセルの下に自動的に追加されることに注意してください。空の名前付きセル範囲を作成してODIでロードすることも可能です。これを行うには、最初のヘッダー行のみを含むセル範囲に名前を付けます。
Microsoft Excelのほとんどのバージョンでは、単純にセル範囲を選択してから範囲に名前を付けるポップアップ・メニューを使用して、その範囲に名前を付けることができます。名前に関する概念情報およびスプレッドシートのセル範囲の定義方法は、Microsoft Excelのドキュメントを参照してください。
標準のリバース・エンジニアリング
Microsoft Excelで標準のリバース・エンジニアリングを実行するには、『Oracle Fusion Middleware 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の一部をリストします。
表7-1 Microsoft ExcelからロードするためのKM
ターゲットまたはステージング領域 | KM | 説明 |
---|---|---|
Oracle |
LKM SQL to Oracle |
任意のISO-92データベースからOracleターゲット・データベースへデータをロードします。統計を使用します。 |
SQL |
LKM SQL to SQL |
ISO-92データベースからISO-92準拠のターゲット・データベースにデータをロードします。 |
Sybase |
LKM SQL to Sybase(bcp) |
任意のISO-92準拠データベースからSybase ASEサーバー・データベースへデータをロードします。バルク・ロードを使用します。 |
Microsoft SQL Server |
LKM SQL to MSSQL(bulk) |
任意のISO-92データベースからMicrosoft SQL Serverターゲット・データベースへデータをロードします。バルク・ロードを使用します。 |
Microsoft Excelはステージング領域として使用できないため、LKMを使用してMicrosoft Excelにデータをロードすることはできません。Microsoft Excelへのデータの統合方法は、7.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の最も一般的なエラーおよび主な原因について、次項で説明します。
この項では、一般的な問題および解決策について説明します。
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の定義時に読取り専用オプションを選択解除しなかった場合に発生します。このオプションを選択解除して、インタフェースを再実行してください。
ロード時にDBCSまたはUTF-16のデータが破損する。
このエラーは、JavaマシンのJDBC-ODBCブリッジでUTF-16データがサポートされていないために発生します。これは、Sun JVMの既知の問題であり、将来のリリース(1.7)で解決されます。