複数の DB2 パッケージ・コレクションを使用する pureQuery の構成

pureQuery Java™ Persistence API (JPA) アプリケーションを複数の DB2® パッケージ・コレクションを使用するように設定します。

このタスクについて

データベース・スキーマのコピーは、複数存在する可能性があります。 このような状態は、西海岸の従業員データに対して 1 つのデータベース、 東海岸の従業員データに対して別のデータベースがある場合など、分割されたデータベース・スキーマで起こる場合があります。この場合、2 つのデータベースは同じスキーマを持ちます。2 つのデータベースが 2 つのデータベース・カタログを持つ場合があります。または、データベースが 1 つだけの場合もあります。 この場合は、テーブル名 (スキーマ名) のハイレベル修飾子は異なるものにする必要があります。スキーマは 同じであるため、単一の JPA エンティティーのセットを使用して両方のデータ・セットにアクセスすることが可能です。これらの状態に対処するように JPA を構成する方法がいくつかあります。

重要: 複数のパーシスタンス・ユニットがある場合には、 別個のデータベースまたは単一のデータベースを使用して、 各パーシスタンス・ユニットに対して wsdbgen コマンドを 1 回実行する必要があります。
複数の DB2 パッケージ・コレクションを使用する必要がある以下の 3 つのシナリオがあります。詳細情報が必要な場合は、IBM® Optim™ PureQuery ランタイムを使用したアプリケーションの構成に関するトピックを参照してください。
  1. データ・ソース名が異なる 2 つのパーシスタンス・ユニットがあり、静的 SQL を使用している場合に、2 セットの DB2 パッケージ (つまり、各データベースに 1 つの DB2 パッケージ) が存在します。 2 つのパーシスタンス・ユニットが存在するため、 JPA ランタイム環境に対して 2 つの persistence_unit_name.pdqxml ファイルが存在します。
  2. テーブルが単一のデータベースにある場合に、2 つのパーシスタンス・ユニットを使用することもできます。この場合は、 データ・ソースは両方のパーシスタンス・ユニットで同じになります。 ただし、スキーマ名プロパティー wsjpa.jdbc.Schema は異なる必要があります。 2 セットの DB2 パッケージがあります。各 DB2 パッケージは、異なるパッケージ名または異なるパッケージ・コレクション名にする必要があります。wsdb2gen および DB2 bind コマンドには、 パッケージ・コレクションおよびパッケージ名を指定するオプションがあります。
  3. パーシスタンス・ユニットを 1 つだけ作成することもできます。 この場合、2 つのパーシスタンス・ユニット構成を維持して、wsdbgen コマンドを複数回実行する必要はなくなります。 この構成では、 共通のパッケージ名が必要です。そのため、パッケージ・コレクション名は異なる必要があります。createEntityManager(Map マップ) メソッドを使用して、 マップに含まれる wsjpa.jdbc.Schema プロパティーおよび wsjpa.jdbc.CollectionId プロパティーにパッケージ・コレクション名とスキーマ名を指定します。

トピックのタイプを示すアイコン タスク・トピック



タイム・スタンプ・アイコン 最終更新: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tejb_pdqconfigpkg
ファイル名:tejb_pdqconfigpkg.html