pureQuery Merge ユーティリティーを使用して作成した pureQueryXML ファイルには、WebSphere® アプリケーションからキャプチャーされた SQL ステートメントが含まれます。
pureQueryXML ファイル内の DB2® パッケージの特性を指定するには、pureQuery Configure ユーティリティーを使用します。pureQueryXML ファイル内の SQL ステートメントとその他の情報から DB2 パッケージを作成し、そのパッケージをトランザクション・データベースにバインドするには、StaticBinder ユーティリティーを使用します。
このタスクについて
Configure ユーティリティーの重要な機能の 1 つは、pureQueryXML ファイル内の SQL ステートメントを、名前が指定されたステートメント・セットにグループ化することです。このステートメント・セットの名前は -rootPkgName オプションの値に基づき、グループ化は指定する Configure オプションに基づきます。
pureQuery StaticBinder ユーティリティーを使用して、SQL ステートメントを含むパッケージを作成し、それらのパッケージをデータベースにバインドします。このシナリオの環境で、修飾子 TEST を使用するテスト・データベース上にパッケージを作成します。StaticBinder ユーティリティーは、pureQueryXML ファイルに定義されたステートメント・セットからパッケージを作成します。
手順
pureQueryXML ファイルを構成し、ファイル内の SQL ステートメントをバインドするには、次のようにします。
- キャプチャーされた SQL データを含む pureQueryXML ファイルを構成します。
pureQueryXML ファイル testApp.pdqxml で Configure ユーティリティーを使用するには、以下のコマンドを実行します。
java com.ibm.pdq.tools.Configure
-rootPkgName testApp
-cleanConfigure TRUE
-pureQueryXml testApp.pdqxml
–validateXml TRUE
-cleanConfigure
TRUE オプションは、Configure ユーティリティーによりファイル全体を構成することを指定します。以前に構成済みの pureQueryXML ファイルを構成する場合は、-cleanConfigure FALSE オプションを使用できます。
Configure ユーティリティーにより、pureQueryXML ファイル内の以前に構成およびバインドされた既存のステートメント・セットの内容を保持することが試みられます。
-validateXml オプションは、Configure ユーティリティーが pureQueryXML スキーマに対して pureQueryXML ファイルの XML 妥当性検査を実行することを指定します。Configure ユーティリティーにより、pureQueryXML ファイル内に存在する XML 構文エラーが表示されます。
ヒント: デフォルトでは、Configure ユーティリティーはコレクション NULLID を使用します。
別のコレクションが使用されるようにしたい場合は、-collection オプションを付けてコレクションを指定することができます。
- pureQueryXML ファイル内の SQL ステートメントをバインドします。
アプリケーションはこのシナリオ用のテスト環境で実行中であり、SQL ステートメントはテスト環境でキャプチャーされました。キャプチャーされた SQL ステートメントをテスト環境でバインドするには、
-bindOptions "QUALIFIER TEST" オプションを指定して pureQuery
StaticBinder ユーティリティーを実行して、テスト・データベース内の SQL ステートメントをバインドします。
java com.ibm.pdq.tools.StaticBinder –url "jdbc:db2://testserver.test.com:32706/sample retrieveMessagesFromServerOnGetMessage=1;"
-username "myuser" -password "mypwd"
-isolationLevel CS
-bindOptions "QUALIFIER TEST"
-pureQueryXml testApp.pdqxml -showDetails TRUE
StaticBinder ユーティリティーにより、pureQueryXML ファイル内に指定された接続にパッケージがバインドされます。
StaticBinder オプション -isolationLevel CS は、StaticBinder が分離レベルとしてカーソル固定 (CS) を使用して単一パッケージを作成することを指定します。CS 分離レベルは、DB2 for Linux、UNIX、および Windows データベースのデフォルト・レベルです。
ヒント: アプリケーションをテスト環境から実稼働環境にマイグレーションする場合、実稼働環境ではテスト環境と異なるスキーマが使用される可能性があります。
スキーマが異なっている場合には、適切な QUALIFIER バインド・オプションを指定するようにしてください。このシナリオでは、テスト環境のスキーマは TEST で、実稼働環境のスキーマは PROD です。実稼働環境では、StaticBinder ユーティリティーのバインド・オプション -bindOptions "QUALIFIER PROD" を指定して、実動データベース内にパッケージを作成します。
このコマンドに対する出力は、以下のサンプルのようになります。
IBM Optim pureQuery Runtime 2.2.0.3 build 2.18.118
Licensed Materials - Property of IBM
5724-U16
(c) Copyright IBM Corp. 2006, 2010 All Rights Reserved.
================================================================================
The StaticBinder utility is beginning the bind operation for the
pureQueryXml file 'C:¥test¥pureQuery-test¥zz-merged.pdqxml'.
Starting to process options: -url "jdbc:db2://testserver.test.com:32706/sample
" -username "*****" -password "*****"
-pureQueryXml "testApp.pdqxml"
-isolationLevel "CS"
-bindOptions "QUALIFIER TEST" -showDetails "true"
The StaticBinder utility successfully bound the package 'TESTAPP'
for the isolation level 'CS'.
Number of statements input: '8', number of statements bound : '8',
bind options: 'ISOLATION CS QUALIFIER TEST'
The bind operation completed successfully for 'testApp.pdqxml'.
Number of packages input :'1'
Number of input packages for which isBindable is false: '0'
Number of input packages with zero bindable statements: '0'
Number of bindable input packages processed by the Static Binder utility: '1' : [TESTAPP]
================================================================================
Results of the StaticBinder utility's activity:
Number of items for which the bind operation SUCCEEDED: 1
次のタスク
次のタスクでは、pureQueryXML ファイルを含むリポジトリーと、アプリケーションで SQL ステートメントを静的に実行できるようにする pureQuery Runtime プロパティーを更新します。