テーブルUDFのメソッド シグネチャ - 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

構文

public class class_name {
  ...
  public static void method_name (
    [ type input_param [,...] ]
    result_type result [,...]
  )
  {
    ...
  }
 ...
}

構文要素

class_name
Javaクラス名。
method_name
Javaメソッド名。
type
入力引数のSQLデータ型に対応するinput_param、Javaプリミティブ、またはクラスのデータ型。
input_param
Javaメソッドの入力パラメータ。署名には、CREATE FUNCTION文のパラメータごとにinput_paramが必要です。
入力パラメータの数は最大128個です。
result_type
対応するCREATE FUNCTION文のRETURNS句の中で、SQLデータ型に対応するJavaプリミティブまたはクラス。
テーブルUDFが、固定された結果行指定で定義される場合、result_typeは、CREATE FUNCTION文のRETURNS TABLE句の対応する列のSQLデータ型に一致するJavaプリミティブまたはクラスです。
テーブルUDFが動的な結果行指定で定義される場合は、関数が呼び出されるまで結果行引数の実際のデータ型は不明であるため、result_typeはjava.lang.Object[]になります。
result
対応するCREATE FUNCTION定義またはREPLACE FUNCTION定義によって決定される行の結果出力パラメータ。
テーブルUDFが固定結果行指定で定義されている場合、メソッド シグネチャの対応するCREATE FUNCTION定義内のRETURNS TABLE句の各列にはresultが格納されています。
テーブルUDFが動的結果行指定で定義されている場合、メソッド シグネチャの対応するCREATE FUNCTION定義内のRETURNS TABLE VARYING COLUMNS句には、列の最大数が格納されています。Javaメソッドは実行中にTbl.getColDef()メソッドを呼び出して、実際の結果タイプを取得することができます。
このメソッドは少なくとも1つの結果行の出力引数を戻さなければなりません。