Hitachi

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


2.3.5 親子集合

構造型DBでは,各レコードは互いに関連を持ちます。レコード間の論理的な関連は親子の関係で表現されます。これを親子集合といいます。

ルートレコードを除く各レコードは,親レコードを1つだけ持ち,子レコードを複数個持つことができます。

〈この項の構成〉

(1) 親レコード

親子集合では,親に当たるレコードを親レコードといいます。親レコードのレコード型を親レコード型といいます。

(2) 子レコード

親子集合では,子に当たるレコードを子レコードといいます。子レコードのレコード型を子レコード型といいます。

(3) 親子集合型

親レコード型と子レコード型をモデル化したものを親子集合型といいます。親子集合型はSDBデータベース定義で定義します。親子集合型の例を次の図に示します。

図2‒12 親子集合型の例

[図データ]

この例の場合,「商品」レコードの商品(品番)に対応して,「売上」レコードと「仕入」レコードが存在します。そのため,「商品」レコードを親レコード,「売上」レコード,「仕入」レコードをそれぞれ子レコードとする,親子集合ができます。

(4) ルートレコード

階層構造の最上位のレコードをルートレコードといいます。ルートレコードのレコード型をルートレコード型といいます。

ルートレコードは,親レコードを持つことはできません。子レコードを複数個持つことができます。

(5) ファミリ

ルートレコード,およびそのルートレコードを親レコードとする子レコード(さらにその子レコードを親レコードとする子レコード)群をまとめてファミリといいます。

(6) 仮想ルートレコードと仮想親子集合【4V AFM】

親子集合を構成しない(階層構造を持たない)データベースを構築する場合,HiRDB/SDでは仮想のルートレコード(仮想ルートレコード)を親レコードとして設定し,仮想的な親子集合を構成します。これを仮想親子集合といいます。

TMS-4V/SPのAFMのデータベースは親子集合を持ちません。そのため,HiRDB/SDの4V AFMのSDBデータベースに移行する場合,仮想親子集合を構成します。

仮想親子集合の例を次の図に示します。

図2‒13 仮想親子集合の例

[図データ]

仮想ルートレコード型のレコード実現値は,通常のレコード実現値とは異なり,1つの子レコード型とだけ親子集合を構成します。つまり,仮想ルートレコード型の1つのレコード実現値に対する子レコード実現値はA,B,Cのどれかの子レコード型にしか存在しません。