Hitachi

ノンストップデータベース HiRDB Version 10 UAP開発ガイド


付録C.2 列名記述領域の展開

列名記述領域は,UAP内で宣言することで静的なエリアとして確保します。

〈この項の構成〉

(1) C言語の場合

C言語の場合のソースプログラム中に展開する列名記述領域の形式を次に示します。

struct {
    short       sqlnz;             /* 配列の有効数  */
    struct {
      short     sqlnamel;          /* 列名の有効長  */
      char      sqlnamec[30];      /* 列名格納エリア */
    } SQLNAME[n];※1
}×××××;※2

注※1 nは,SQL記述領域のSQLVARの配列の大きさと同じ個数(1〜30000)を指定します。

注※2 構造体名称( '×××××' の部分)は,任意の文字列を指定してください。なお,構造体名称に 'SQL' で始まる文字列は指定できません。また,DESCRIBE文で列名記述領域を指定する場合,確保した領域の名称を指定します。

(2) COBOL言語の場合

COBOL言語の場合のソースプログラム中に展開する列名記述領域の形式を次に示します。

01  SQLCNDA.※1
  02  SQLNZ  PIC  S9(4) COMP.
  02  SQLNAME  OCCURS  1  TIMES  n.※2
    03  SQLNAMEL  PIC  S9(4)  COMP.
    03  SQLNAMEC  PIC  X(30).

注※1 集合項目の名称('SQLCNDA'の部分)は,任意の名称を指定してください。なお,データ項目に'SQL'で始まる文字列は指定できません。また,集合項目のレベルは必ず01レベルにしてください。

注※2 nは必要な個数(1〜30000)を指定します。