- CALLED ON NULL INPUT
- RETURNS NULL ON NULL INPUT
この句の動作は、パラメータ形式に対する指定と相関しています。
指定するパラメータ形式 | null |
---|---|
SQL | 入力にも結果にも指定可能です。 そのためには、各パラメータと結果パラメータに標識値を指定します。 |
TD_GENERAL | 例外条件が発生します。 |
JAVA | 以下に示すように、関数がオブジェクト マップまたは単純なマップを使用するかどうかによって動作が異なります(詳細についてはSQLとJavaの間のデータ型マッピングを参照)。
Javaメソッドの戻りタイプがオブジェクト マッピングされたデータ型として定義されている場合にのみ、スカラーまたは集約Java UDFから明示的にnullを返すことができます。 Javaメソッドの戻りタイプが単純マッピングとして定義されている場合、単純マッピングされたデータ型ではnullを表現できないため、実行時にnullを返すことはできません。 以下に示す条件の下でのみ、実行時にnullをパラメータとしてスカラーまたは集約Java UDFに渡すことができます。
|
CおよびC++プロシージャの場合、渡される引数のいずれかがnullなら、実行される処置はnull処理に関して指定したオプションに依存します。
指定内容 | 関数の動作 |
---|---|
CALLED ON NULL INPUT | 呼び出されて評価されます。 |
RETURNS NULL ON NULL INPUT 関数に渡されるパラメータのいずれかがnullの場合 |
呼び出されません。常にnullが返されます。 このオプションは、nullを処理しないTD_GENERALパラメータ形式で定義した関数で、例外条件を生成しないようにするために役立ちます。 集約関数は、nullを渡されても常に呼び出される必要があるため、RETURNS NULL ON NULL INPUTを指定できません。 |