構文 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQL外部ルーチン プログラミング

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Published
2021年7月
Language
日本語
Last Update
2021-09-23
dita:mapPath
ja-JP/rin1593638965306.ditamap
dita:ditavalPath
ja-JP/wrg1590696035526.ditaval
dita:id
B035-1147
Product Category
Software
Teradata Vantage
FNC_ColumnDef_t *
FNC_TblGetColDef()
FNC_ColumnDef_t
typedef struct
{
   int    num_columns;
   parm_t column_types[1];
} FNC_ColumnDef_t;
parm_t
sqltypes_td.hで以下のように定義されています。
typedef struct parm_t
{
  dtype_et    datatype;
  dmode_et    direction;
  charset_et  charset;
  union {
    long  length;
    int   intervalrange;
    int   precision;
    struct {
      int  totaldigit;
      int  fracdigit;
    } range;
  } size;
} parm_t;

構文要素

num_columns
column_types配列内のエントリの数。テーブル関数実行の結果列の数と同じです。
column_types
各結果列のデータ型と属性を提供するparm_t配列。
datatype
列のデータ型を指定します。sqltypes_td.hヘッダー ファイルは、dtype_etを以下のように定義します。
typedef int dtype_et;
有効な値は、sqltypes_td.hのdtype_en列挙定数で以下のように定義されています。有効な値の一覧は、FNC_CallSPdtype引数を参照してください。
direction
結果列の定義に関する情報は提供されません。parm_t構造体の方向指定メンバーの詳細については、FNC_CallSPを参照してください。
charset
CHARまたはVARCHARデータの文字セットを指定します。

sqltypes_td.hヘッダー ファイルは、charset_etを以下のように定義しています。

typedef int charset_et;

有効な値は、sqltypes_td.hのcharset_en列挙定数で以下のように定義されています。

typedef enum charset_en
{
   UNDEF_CT=0,
   LATIN_CT=1,
   UNICODE_CT=2,
   KANJISJIS_CT=3,
   KANJI1_CT=4
} charset_en;
length
CHAR、VARCHAR、またはBYTE型の長さを指定します。
intervalrange
INTERVAL型の範囲を指定します。例えば、INTERVAL YEAR(4)の場合は4です。
precision
TIME型またはTIMESTAMP型の精度を指定します。例えば、TIME(4)の場合は4です。
totaldigit
DECIMAL (m,n)型またはINTERVAL SECOND (m,n)型の値mを指定します。
fracdigit
DECIMAL (m,n)型またはINTERVAL SECOND (m,n)型の値nを指定します。