• 検索結果がありません。

性能向上,操作性向上に関する UAP の設 計

ドキュメント内 HiRDB V9 XDM/RD E2接続機能 (ページ 53-56)

3   UAP の設計

3.3  性能向上,操作性向上に関する UAP の設 計

ここでは,性能向上と操作性向上に関して

UAP

設計時に考慮する点の中で,特に

HiRDB

サーバを使用する場合と

XDM/RD E2

を使用する場合で差異がある項目について 説明します。

その他の性能向上,および操作性向上に関する

UAP

設計については,マニュアル

「HiRDB Version 9 UAP開発ガイド」を参照してください。

3.3.1 配列を使用した FETCH 機能

XDM/RD E2

のバージョンによって,配列を使用した

FETCH

機能を使用できる場合と できない場合があります。配列を使用した

FETCH

機能を使用できるバージョンを次に 示します。

配列を使用した

FETCH

機能を使用できるバージョン

XDM/RD E2 08-00

以降

3.3.2 複数接続機能

(1) 機能概要

複数接続機能は,HiRDBクライアントで一つの

UAP

から,XDM/RD E2に対して複数 の

CONNECT

を別々に実行できるようにする機能です。

複数接続機能のそれぞれの接続は独立していて,DBコネクションサーバのタスクは接続 ごとに割り当てられて別々のトランザクション(別々のアクティビティ)として処理さ れるので,UAPは複数の

SQL

文を同時に実行できます。一つの

UAP

から複数接続でき るので,実行する

UAP

の数を削減でき,全体としての

UAP

のメモリ所要量を削減でき ます。

XDM/RD E2

の最大接続数は,接続ごとに別ユーザとしてカウントされるので,ユーザ 数の上限ではなく,同時に

CONNECT

する接続数の上限となります。

複数接続機能の特長を次に示します。

接続ごとに,異なるユーザ

ID,パスワードを使用できます。

接続ごとに,複数の

XDM/RD E2

へ接続できます。環境変数グループを使用する場合 は,ほかの

HiRDB

サーバと同時に接続することもできます。

複数接続機能の処理概要を図

3-2

および図

3-3

に示します。

3-2 複数接続機能の処理概要(マルチスレッドを使用しない場合)

3. 

UAPの設計

3-3 複数接続機能の処理概要(マルチスレッドを使用する場合)

(2) コーディング例

複数接続機能を使用した場合の

UAP

のコーディング例については,マニュアル

「HiRDB Version 9 UAP開発ガイド」を参照してください。

(3) 規則

● 複数接続機能は,C言語の場合にだけ使用できます。

● 複数接続機能を使用する場合は,UAPのコンパイルおよびリンケージ時に専用のライ ブラリを指定する必要があります。

複数接続機能を使用する場合のコンパイルとリンケージについては,マニュアル

「HiRDB Version 9 UAP開発ガイド」を参照してください。

X/Open XA

インタフェース環境下での複数接続機能については,マニュアル

「HiRDB Version 9 UAP開発ガイド」を参照してください。

● 複数接続機能用ライブラリを使用する

UAP

では,一つの接続を保持したままスレッ ドを分岐し,そのスレッドが

SQL

を実行する場合,ほかの

SQL

を発行するスレッド との間で処理のシリアライズを必要とします。したがって,同一接続に対する

SQL

は 同時に発行できません。異なる接続に対する

SQL

は同時に発行できます。

ALLOCATE CONNECTION HANDLE,FREE CONNECTION HANDLE

のエラー 情報を参照する場合,SQLCODE,SQLERRMではなく,リターンコード受け取り変 数の値を参照してください。リターンコード受け取り変数については,マニュアル

「HiRDB Version 9 SQLリファレンス」を参照してください。

● 各接続で発行する

SQL

は,XDM/RD E2上ではそれぞれ別のアクティビティとして扱 われます。

このため,ほかの接続で排他されている資源を別の接続で排他しようとした場合に,

永久的な排他待ちになることがありますので注意してください1

また,スレッド間で発行する

SQL

の組み合わせによってデッドロックエラーになる場 合がありますので注意してください2

注※

1 例を次に示します。

1. 接続 1

が表

1

を更新

ドキュメント内 HiRDB V9 XDM/RD E2接続機能 (ページ 53-56)