2.8.1 XDM/SD接続機能とは

XDM/SD接続機能とは,DABroker for C++からACE3の機能を利用して構造型データベースXDM/SDのレコードへアクセスする機能です。

DABrokerを利用したデータベースアクセスは,リレーショナルデータベースへのアクセスであるため,構造型データベースであるXDM/SDのデータを直接アクセスできません。XDM/SD接続機能は,階層構造になっているXDM/SDのデータを,ACE3とDatabase Connection Serverを利用することで,リレーショナルデータベースであるかのようにアクセスできる機能です。

DABroker for C++のクラスライブラリを利用して,次のようなデータベースアクセスができます。

XDM/SDでは,親子関係を持つレコード間の関連を,親子集合で表現し,親レコードは複数の子レコードを持つことができます。このため,ACE3では,親と子を結合したレコードとすることで,一つのテーブルとしてアクセスします。

XDM/SDのスキーマとACE3のテーブルの対応を,図2-5に示します。

図2-5 XDM/SDのスキーマとACE3のテーブルの対応

[図データ]

ACE3で定義したテーブルに対してDatabase Connection Serverの提供するRDML文のSELECT文を実行することで,WHERE句で指定した検索条件に合致したレコードのデータが取得できます。

RDML文については,マニュアル「Database Connection Server」を参照してください。

前述のテーブルTAB1に対して次のようなSELECT文を実行します。

 

SELECT 製造元番号,商品番号,在庫数量  FROM TAB1 WHERE 商品番号=210

 

この結果の取得データは次のようになります。

[図データ]