4.1 アプリケーション・プログラムに対するゲートウェイの存在
DRDAデータベースの情報にアクセスするために記述されたアプリケーションは、Oracle Databaseとのインタフェースになります。
アプリケーションを開発する場合、次のことに注意してください。
- Oracleデータベースで定義されているデータベース・リンクを使用して、アプリケーションにDRDAデータベースを定義する必要があります。 アプリケーションでは、データベース・リンクに定義された名前を使用して、DRDAデータベースに存在する表を指定する必要があります。 たとえば、データベース・リンクがDRDAデータベース・リンク
DRDA
という名前になるように定義されており、アプリケーションがOracleデータベースおよびDRDAデータベースからデータを取得する必要があるとします。 アプリケーションでは、2つの表を結合する次のSQL文を使用します:SELECT EMPNO, SALARY FROM EMP L, EMPS@DRDA R WHERE L.EMPNO = R.EMPNO
この例では、
EMP
EMPS
はDRDAサーバー上の表です。 DRDAサーバーの表にシノニムまたはビューを定義して、データベース・リンクの接尾辞なしで情報にアクセスすることもできます。 - 定義済のDRDAデータベースを対象にデータの読取りと書込みが可能です。
SELECT
,INSERT
,UPDATE
およびDELETE
はすべて有効な操作です。 - 単一のトランザクションで、1つのDRDAデータベースと複数のOracle Databaseに書込みを実行できます。
JOIN
を使用する単一のSQL文は、複数のOracleデータベース内の表、複数のDRDAデータベース内の表、またはその両方を参照できます。
- 「フェッチの再ブロック」
Oracleデータベースは、HS_RPC_FETCH_REBLOCKING
パラメータを使用したフェッチ・リブロックをサポートしています。
親トピック: アプリケーションの開発
4.1.1 フェッチの再ブロック
Oracleデータベースは、HS_RPC_FETCH_REBLOCKING
パラメータを使用したフェッチ・リブロックをサポートしています。
このパラメータの値がON
(デフォルト)に設定されている場合、SELECT
文の配列サイズはHS_RPC_FETCH_SIZE
値によって決まります。 HS_RPC_FETCH_SIZE
パラメータは、ゲートウェイからOracleデータベースへの各バッファで送信されるバイト数を定義します。 バッファには、DRDAサーバーからの1つ以上の修飾行が含まれることがあります。 この機能により、アプリケーション設計、インストール・タイプおよびワークロードに応じてパフォーマンスが大幅に向上する可能性があります。
クライアントとOracleデータベースの間の配列サイズは、Oracleアプリケーションによって決定されます。 詳細は、使用しているプラットフォームに応じて、「Oracle Database Gatewayインストレーションおよび構成ガイドfor IBM AIX on POWER Systems (64-Bit)、Linux x86-64、Oracle Solaris on SPARC (64-Bit)、Oracle Solaris on x86-64 (64-Bit)、HP-UX Itanium」または「Oracle Database Gatewayインストレーションおよび構成ガイドfor Microsoft Windows」を参照してください。
親トピック: アプリケーション・プログラムへのゲートウェイの外観