次に示すTeradataのライブラリ関数では、ARRAY引数についての情報を取得できます。これらのライブラリ関数を使用すると、存在する構成要素の数や構成要素のデータ型、次元数などのARRAY型についての情報を取得できます。
- FNC_GetArrayElementCount
- FNC_GetArrayNumDimensions
- FNC_GetArrayTypeInfo
FNC_GetArrayElementCountを呼び出すと、値(NULLを含む)が設定された構成要素の総数を取得できます。また、そのARRAY型に存在する最後の構成要素へのインデックスも取得できます。
FNC_GetArrayNumDimensionsを呼び出すと、ARRAY型に定義された次元数を取得できます。この情報は、外部ルーチンでは不明な場合があります。この情報を取得することで、外部ルーチンの作成者は、そのルーチン内でアクセスするARRAY型の次元に依存するコードを作成できるようになります。
FNC_GetArrayTypeInfoは、ARRAY引数について次の情報を返します。
- このARRAY型に定義された次元数。
- このARRAY型に定義された構成要素の総数(すべての次元が対象)。これを、ARRAYの最大カーディナリティと呼ぶことがあります。
- 構成要素のデータ型。エレメント タイプがUDTの場合、この関数ではUDT型とUDT型名も返します。
- 構成要素の値の最大長(バイト単位)。
- 特定の構成要素の型(DECIMAL型など)の精度およびスケールの値。
- 構成要素に関連付けられたサーバー文字セット(構成要素が文字型の場合)。
- このARRAYの各次元のスコープ。
これらの関数の詳細について、Cライブラリ関数を参照してください。