付録C.2 検索に使用する構造体

ここでは,検索に使用する構造体について説明します。

<この項の構成>
(1) 検索結果として取得する構造体

(1) 検索結果として取得する構造体

(a) SDBR_QUERYRESULT構造体検索結果構造体
説明
検索結果が格納される構造体です。検索を実行したとき,検索結果として取得できるプロパティの個数とプロパティ情報が設定されます。検索結果が0件の場合には,検索結果構造体の内容はNULLです。
形式

struct SDBR_QUERYRESULT {
 DmaInteger32         lPropCount;     //プロパティ個数
 SDBR_PROPERTIES*     pProperties;    //プロパティ情報
};

メンバの説明
  • lPropCount
    検索結果として取得したプロパティの個数が設定されます。
  • pProperties
    検索結果として取得したプロパティのプロパティ情報を表すSDBR_PROPERTIES構造体の先頭のアドレスへのポインタが設定されます。
この構造体を出力するメソッド
  • CdbrEqlStatement::GetResultメソッド
(b) SDBR_PROPERTIES構造体
説明
検索結果として取得したプロパティの情報が設定される構造体です。
形式

struct SDBR_PROPERTIES {
 DmaInteger32      lType;         //データ型
 DmaInteger32      lCardinality;  //基本単位
 DmaInteger32      lCount;        //プロパティ値の個数
 union {                          //プロパティ値を
                                  // 格納する共用体
   pDmaBoolean     pbBoolean;     //Boolean
   pDmaId          pId;           //ID
   pDmaInteger32   plInteger;     //Integer
   pDmapv          pplObject;     //Object
   ppDmaString_T   ppString;      //String
 } uValue;
};

メンバの説明
  • lType
    プロパティの型を示す値として,設定される値を次に示します。
    DMA_DATATYPE_BOOLEAN:Boolean型
    DMA_DATATYPE_ID: ID型
    DMA_DATATYPE_INTEGER32: Integer32型
    DMA_DATATYPE_OBJECT:Object型
    DMA_DATATYPE_STRING:String型
  • lCardinality
    基本単位が設定されます。設定される値を次に示します。
    DMA_CARDINALITY_SINGLE:Scalar(スカラー)型
    DMA_CARDINALITY_ENUM:Enumeration(列挙)型
    DMA_CARDINALITY_LIST:List(リスト)型
    EDM_DMA_CARDINALITY_VARRAY:VariableArray(可変長配列)型
  • lCount
    プロパティの値の要素数が設定されます。要素数は,lCardinalityの値に応じて設定されます。lCardinalityの値と設定される値を次に示します。なお,検索結果である,SDBR_QUERYRESULT構造体の内容がNULLの場合,lCountには0が設定されます。
    DMA_CARDINALITY_SINGLEの場合:1
    DMA_CARDINALITY_ENUMまたはDMA_CARDINALITY_LISTの場合:0以上の値
    EDM_DMA_CARDINALITY_VARRAYの場合:1
  • 共用体uValueのメンバ
    プロパティの値は,共用体uValueのメンバpbBoolean,plInteger,pId,pplObject,ppStringのうち,lTypeに設定された型と名前が一致するものが示す領域に設定されます。
この構造体を出力するメソッド
  • CdbrEqlStatement::GetResultメソッド