Hitachi

ノンストップデータベース HiRDB Version 10 構造型データベース機能


付録K.1 検索範囲決定の契機

検索範囲(検索条件によって決定されるレコードの集合ではなく,検索対象となるRDエリアの集まりを指す)は,SDBデータベース種別によって異なります。4V FMB,および4V AFMのSDBデータベースの場合は,検索要求時および格納要求時に検索範囲が決定され,SD FMBのSDBデータベースの場合は,検索要求時に検索範囲が決定されます。検索範囲が決定される場合と,決定されない場合について,次に示します。

検索範囲が決定されない場合は,前回の検索/格納時に決定された範囲を検索範囲とします。検索範囲が決定された場合,「表K-7 RDエリア指定種別,およびレコード検索時の基点条件の組み合わせによる検索範囲(4VのSDBデータベースの場合)」,または「表K-8 RDエリア指定種別,およびレコード検索時の基点条件の組み合わせによる検索範囲(SDのSDBデータベースの場合)」にあるRDエリアが検索範囲となります。

4V AFMのSDBデータベースの場合は,「表K-7 RDエリア指定種別,およびレコード検索時の基点条件の組み合わせによる検索範囲(4VのSDBデータベースの場合)」で決定されたRDエリアから,個別開始時のRDエリアの指定種別がX'00'のとき,最初に検索した仮想ルートレコードの子レコードだけに限定されます。

検索および格納の操作,およびSDBデータベース種別の組み合わせごとに,検索範囲の決定契機を次に示します。

表K‒1 4V FMBのSDBデータベース検索時の検索範囲決定

レコードの検索時または位置指示子の位置づけ時の指定

前回の検索要求または格納要求の結果

検索範囲の決定

レコード種別

指示コード

レコード型名

(指定必須)

ルートレコード

F

指定あり

N

指定あり

SQLCODE≧0(100を除く)

×

SQLCODE<0またはSQLCODE=100

結果なし(前回の検索要求および格納要求が未実施)

子レコード

F/N/L/P/U

指定あり

×

(凡例)

○:検索範囲が決定されます。

×:検索範囲が決定されません。

−:該当しません。

F:FIRSTポインタから検索します。

N:NEXTポインタから検索します。

L:LASTポインタから検索します。

P:PRIORポインタから検索します。

U:USERポインタから検索します。

表K‒2 4V AFMのSDBデータベース検索時の検索範囲決定

レコード検索時の指定

前回の検索要求または格納要求の結果

そのほかの条件

検索範囲の決定

レコード種別

指示コード

レコード型名

子レコード

F/L

指定あり

指定なし

N/P

指定あり

SQLCODE≧0(100を除く)

直前に一括削除を実行

実行あり

実行なし

ユーザ指定のレコード型名と,前回検索および格納したレコード型名

同じ

×

異なる

SQLCODE<0またはSQLCODE=100

結果なし(前回の検索要求または格納要求が未実施)

指定なし

SQLCODE≧0(100を除く)

×

SQLCODE<0またはSQLCODE=100

結果なし(前回の検索要求または格納要求が未実施)

(凡例)

○:検索範囲が決定されます。

×:検索範囲が決定されません。

−:該当しません。

F:FIRSTポインタから検索します。

N:NEXTポインタから検索します。

L:LASTポインタから検索します。

P:PRIORポインタから検索します。

注※

ユーザは仮想ルートレコードを意識しないで,子レコードに対してアクセス要求します。

表K‒3 SD FMBのSDBデータベース検索時の検索範囲決定

レコードの検索時または位置指示子の位置づけ時の指定

検索時の状態

検索範囲の決定

レコード種別

位置指示子種別

指示コード

レコード型名

(指定必須)

レコード位置指示子

検索順序※1

ルートレコード

R

F

指定あり

N

指定あり

空値

空値ではない

無効

※2

有効

×

子レコード

R

F

指定あり

N

指定あり

空値

空値ではない

無効

※2

有効

×

P

F/N/L/P

指定あり

×

(凡例)

○:検索範囲が決定されます。

×:検索範囲が決定されません。

−:該当しません。

R:レコード位置指示子

P:親子集合位置指示子

F:FIRSTポインタから検索します。

N:NEXTポインタから検索します。

L:LASTポインタから検索します。

P:PRIORポインタから検索します。

注※1

検索順序は該当するレコードの検索範囲が決定されたときに有効になり,次の処理が実行されたときに無効になります。

・位置指示子種別に'P'を指定している子レコードの検索

・レコードの格納

注※2

レコード位置指示子が位置づけられているレコードを基点とします。

表K‒4 4V FMBのSDBデータベース格納時の検索範囲決定

レコード格納時の指定

検索範囲の決定

レコード種別

レコード型名(指定必須)

ルートレコード

指定あり

子レコード

指定あり

×

(凡例)

○:検索範囲が決定されます。

×:検索範囲が決定されません。

表K‒5 4V AFMのSDBデータベース格納時の検索範囲決定

レコード格納時の指定

検索範囲の決定

レコード種別

レコード型名

子レコード(ユーザは仮想ルートレコードを意識しないで,子レコードに対してアクセス要求)

指定あり,またはなし

(凡例)

○:検索範囲が決定されます。

表K‒6 SD FMBのSDBデータベース格納時の検索範囲決定

レコード格納時の指定

検索範囲の決定

レコード種別

レコード型名(指定必須)

ルートレコード

指定あり

×

子レコード

指定あり

(凡例)

×:検索範囲が決定されません。