テーブル関数の構文要素 - 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
function_name
値がCREATE FUNCTION定義の関数名であるC文字列へのポインタ。
関数の中では、この名前を使用してエラー メッセージを作成できます。
input_parameter_specification
[オプショ] CREATE FUNCTION定義内の入力パラメータのタイプと名前。定義内の各入力パラメータには、対応するinput_parameter_specificationが必要です。入力パラメータの最大数は128です。
typeは、input_parameterのSQLデータ型に対応するsqltypes_td.h内のC型です。
result_specification
CREATE TABLEまたはREPLACE TABLE文の引数に対応する結果行引数。
固定された行結果指定を持つテーブル関数の場合:
  • テーブルには、CREATE TABLE文のRETURNS TABLE句の列ごとにresult_specificationが含まれています。
  • typeは、CREATE TABLE文のRETURNS TABLE句の対応する列のSQLデータ型に一致するsqltypes_td.h内のC型です。
  • resultは、CREATE TABLE文のRETURNS TABLE句の対応する列にあるSQLデータ型の値に必要なサイズを持つデータ領域へのポインタです。
動的な行結果指定を持つテーブル関数の場合:
  • テーブルには、CREATE TABLE文のRETURNS TABLE VARYING COLUMNS句の列ごとにresult_specificationが含まれています。
  • 結果行の引数のデータ型は関数が呼び出されるまで不明なため、それぞれのresultはvoidポインタとなります。

    実行中に、テーブル関数はライブラリ関数FNC_TblGetColDefを呼び出して、結果行のデータ型を取得できます。

  • resultは、CREATE TABLE文のRETURNS TABLE句の対応する列にあるSQLデータ型の値に必要なサイズを持つデータ領域へのポインタです。
indicator_parameter_specification
[オプショ]入力パラメータに対応する標識パラメータ。各input_parameter_specificationには、対応するindicator_parameter_specificationが必要です。入力パラメータと標識パラメータは同じ順序である必要があります。
indicator_parameterの値が-1の場合、対応するinput_parameterの値はNULLです。
indicator_parameterの値が0の場合、対応するinput_parameterの値は非NULL値です。
indicator_result_specification
[オプショ]テーブル関数が対応するindicator_parameterの結果を返すかどうかを指定します。各indicator_parameter_specificationには、対応するindicator_result_specificationが必要です。標識パラメータと標識結果パラメータは同じ順序である必要があります。
indicator_resultの値が-1の場合、テーブル関数は対応するindicator_parameterの結果を返しません。
indicator_resultの値が0の場合、テーブル関数は対応するindicator_parameterの結果を返します。
動的な結果行指定を持つテーブル関数の場合、indicator_resultの値が-1であれば、テーブル関数を呼び出したSELECT文内で対応する結果引数が省略されています。
テーブル関数が結果引数に対してNULLを返す場合、対応するindicator_resultの値は-1である必要があります。
sqlstate
SQLSTATE値(成功、例外、または警告)を示す6文字のC文字列へのポインタ。最初の5文字はASCII文字、6文字目はC NULL文字です。文字列は成功を示す「00000」に初期化されています。
SQLSTATE値の詳細は、SQLSTATEの値を戻すを参照してください。
m
CREATE FUNCTION定義の関数名の文字数。ANSI SQL標準では、mの最大値は128と定義されています。Vantageでは、関数名に最大30文字を使用できます。
specific_function_name
値が呼び出されている外部関数の名前であるC文字列へのポインタ。
CREATE FUNCTION文にSPECIFIC句が含まれている場合、specific_function_nameはSPECIFIC句の名前です。それ以外の場合、specific_function_namefunction_nameと同じです。
関数の中では、この名前を使用してエラー メッセージを作成できます。
l
外部関数名の文字数。ANSI SQL標準では、mの最大値は128と定義されています。Vantageでは、関数名に最大30文字を使用できます。
error_message
値がエラー メッセージ テキストであるC文字列へのポインタ。
p
エラー メッセージ テキストの文字数。最大値は256です。