void function_name ( type_1 *input_parameter_1, ..., type_n *input_parameter_n, result_type_1 *result_1, ..., result_type_r *result_r, int *indicator_parameter_1, ..., int *indicator_parameter_n, int *indicator_result_1, ..., int *indicator_result_r, char sqlstate[6], SQL_TEXT function_name[m], SQL_TEXT specific_function_name[l], SQL_TEXT error_message[p] ) { ... }
説明
パラメータ | 指定内容 | 入力/ 出力 | |||
---|---|---|---|---|---|
type_n * input_parameter_n | 入力引数。nはCREATE FUNCTION定義またはREPLACE FUNCTION定義に含まれるパラメータの数です。n = 0なら、入力パラメータはありません。このデータ型は、sqltypes_td.h内のCデータ型のうち、入力引数のSQLデータ型に対応するものです。 | 入力 | |||
result_type_r * result_r | 行の結果引数。rは、対応するCREATE FUNCTION定義またはREPLACE FUNCTION定義によって決定されます。 テーブル関数が動的な結果行指定により定義されている場合
テーブル関数が動的な結果ロー指定により定義されている場合
この関数は少なくとも1つの結果引数を戻さなければなりません。 |
出力 | |||
int * indicator_parameter_n | 入力引数に同じ順序で対応するインジケータ引数(n > 0の関数の場合)。 インジケータ引数の値。
|
入力 | |||
int * indicator_result_r | 関数が対応する結果引数を戻す必要があるかどうか。 インジケータ引数の値。
関数が結果引数としてNULLを戻す場合、その関数では、対応するインジケータ引数を-1に設定する必要があります。 |
入出力 | |||
char sqlstate[6] | 成功、例外、または警告を示す戻り値。これは、6文字のC文字列へのポインタです(最初の5文字はASCII、最後の文字はCのNULL文字)。関数でエラーを検出した場合、関数でsqlstateをSQLSTATEの例外または警告に設定できます。 この文字列の初期値は'00000' (成功)です。 SQLSTATE値の詳細は、SQLSTATEの値を戻すを参照してください |
出力 | |||
SQL_TEXT function_name[m] | 関数名。これはC文字列へのポインタです。これは、CREATE FUNCTION function_nameで指定される関数名と同じ名前です。 関数の中では、この名前を使用してエラー メッセージを作成できます。 ANSI SQL標準では、mの最大値は128と定義されています。Teradata Databaseでは、関数名は最大30文字です。 |
入力 | |||
SQL_TEXT specific_function_name[l] | 同じ名前の関数が複数個ある場合、呼び出す外部関数の特定名。これはC文字列へのポインタです。これは、CREATE FUNCTION文のSPECIFIC句で指定する特定名と同じ名前です。 CREATE FUNCTION文にSPECIFIC句が含まれていない場合、この名前は、CREATE FUNCTION function_nameで指定される関数名と同じです。 関数の中では、この名前を使用してエラー メッセージを作成できます。 ANSI SQL標準では、lの最大値は128と定義されています。Teradata Databaseでは、関数名は最大30文字です。 |
入力 | |||
SQL_TEXT error_message[p] | エラー メッセージのテキスト。これは、C文字列へのポインタであり、pの最大値は256です。 | 出力 |