DB2 および Informix における pureQuery の動的モード対静的モードでの使用

IBM® Optim™ PureQuery Runtime の使用は、Java™ Persistence API (JPA) が DB2® および Informix® データベースにアクセスするための代替方法です。IBM Optim PureQuery Runtime は、静的 Structured Query Language (SQL) をサポートしています。

始める前に

重要: BatchLimit は構成可能なプロパティーです。 DB2 のデフォルト値は 100 で、Informix のデフォルト値は 0 です。batchLimit を 0 に設定すると、バッチ処理は行われません。アプリケーションが Informix データベース・バックエンドの異種バッチ処理を実行するためには、persistence.xml ファイルで batchLimit を構成します。 batchLimit を 100 に設定する方法の例を以下に示します。
<property name="openjpa.jdbc.DBDictionary" value="batchLimit=100"/> 

このタスクについて

Feature Pack for OSGi Applications and Java Persistence API (JPA) 2.0 では、IBM Optim PureQuery Runtime 2.2.0.2 以降のサポートを導入しています。IBM Optim PureQuery Runtime 2.2.0.3 の新規フィーチャーでは、Informix をサポートし、DB2 アプリケーションにおける pureQuery の 動的モードでの使用をサポートします。

これは、Java Enterprise Edition (Java EE) 環境でデータ・ソースに pdqProperties を設定するとアーカイブされます。 あるいは、Java Standard Edition (Java SE) 環境の接続 URL で pdqProperties を設定するとアーカイブされます。

pdqProperties が定義されない場合は、pureQuery が互換モードで実行されるため、pdqxml ファイルはアプリケーション Java アーカイブ (JAR) ファイルでパッケージされます。

pdqProperties を参照するトピックは、IBM Integrated Data Management インフォメーション・センターに複数あります。

手順

  1. Java EE 環境でデータ・ソースを定義する場合は、有効な IBM Optim PureQuery Runtime プロパティーにカスタム・プロパティー pdqProperties を追加し、 ストリング値を設定します。 以下の表では、 pureQuery を動的モードで使用する executionMode(DYNAMIC) の例を 表示します。有効な IBM Optim PureQuery Runtime プロパティーであれば、指定して動的実行を行うことができます。pdqProperties に pureQuery Xml(pdqxml-file-location) プロパティーが含まれる場合、IBM Optim PureQuery Runtime は pdqxml ファイルで検出される静的モードの SQL を使用します。この pureQueryXML プロパティーには pdqxml ファイル・ロケーションが含まれます。
    重要: pdqxml ファイルが以前にデータベースに対して バインドされたと想定します。
    表 1. DB2 および Informix の pdqProperties の設定の例. DB2 および Informix の pdqProperties の設定の例
    pdqProperties= DB2 バックエンド Informix
    executionMode(DYNAMIC) 動的実行 動的実行
    executionMode(STATIC), pureQueryXML(c:/temp/ItemEJB.pdqxml)
    重要: executionMODE(DYNAMIC) および executionMode(STATIC) は、それぞれ動的実行および静的実行で必須です。

    静的実行モードでは、pdqxml ファイルの指定は IBM Optim PureQuery Runtime の資料に従います。

    pureQueryXML(pdqxml-file-location) は、 pdqxml ファイルの場所を指定する複数の方法のうちの 1 つです。 pdqxml ファイルの場所は pdqxml ファイルのパスで示されます。例えば、c:/temp/ItemEJB.pdqxml のようになります。

    静的実行 NA (無視)
  2. Java SE 環境では、 pdqProperties は connectionURL に設定することができます。connectionURL で pdqProperties を指定するには、以下の 2 つの方法があります。
    1. openjpa.connectionProperties を使用します。 以下に例を示します。
      <property name="openjpa.ConnectionProperties"
                value="DriverClassName=com.ibm.db2.jcc.DB2Driver, 
                                       Url='jdbc:db2://localhost:50000/demodb:pdqProperties=
                                           pureQueryXml(C:/wsjpa1/fvt/resources/demo.pdqxml);', 
                Username=myid, Password=secret" />
    2. openjpa.ConnectionURL を使用します。 以下に例を示します。
      <property name="javax.persistence.jdbc.driver" value="com.ibm.db2.jcc.DB2Driver"/>
      <property name="javax.persistence.jdbc.url" 
                value="jdbc:db2:fvt2:pdqProperties=pureQueryXml(C:/wsjpa1/fvt/resources/demo.pdqxml);"/>
      <property name="javax.persistence.jdbc.user" value="myid"/>
      <property name="javax.persistence.jdbc.password" value="secret"/>
    重要: pureQueryXml ファイル・ロケーションは IBM Optim PureQuery Runtime がファイルを更新できるように読み取り/書き込み許可を付与する必要があります。
    重要: IBM Optim PureQuery Runtime を実行するために定義するデータ・ソースは、JDBC で SQL を実行するアプリケーションとは共有しないでください。
    pdqProperties が 接続 URL のデータ・ソースに設定されている場合、pdqxml ファイルは、アプリケーション JAR ファイル内でパッケージされていても無視されます。ただし、pdqProperties が設定されていない場合、アプリケーション JAR ファイル内に存在する pdqxml ファイルは Runtime によって検索されます (これは互換モードです)。pdqxml ファイルが検出された場合、 その設定は静的実行モードです。それ以外の場合は、すべての SQL は JDBC で実行されます。

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



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