17.00 - 17.05 - PARAMETER STYLE句 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQLデータ定義言語 詳細トピック

Product
Advanced SQL Engine
Teradata Database
Release Number
17.00
17.05
Release Date
2020年6月
Content Type
プログラミング リファレンス
Publication ID
B035-1184-170K-JPN
Language
日本語 (日本)
このオプションの句では、関数が使用するパラメータ受け渡し形式を指定します。Teradata Databaseでは、ユーザー定義関数の次の3つのパラメータ受け渡し形式がサポートされています。
  • SQL
  • TD_GENERAL
  • JAVA
以下のルールが、行レベル セキュリティ ポリシー関数に指定するパラメータ形式に適用されます。
  • SQLパラメータ形式は、UDFのそれぞれの入力パラメータと出力パラメータが、2番目の標識パラメータを持っているか定義します。

    SQLパラメータ形式では、CまたはC++のコード本体でnullデータを指定できます。

    UDFのCまたはC++の定義の標識パラメータのセットは、対応する値のパラメータのセットに従います。標識パラメータは、値のパラメータと同じ順序である必要があります。

    標識パラメータの値 相当するパラメータ値
    -1 null。
    0 nullではありません。

    標識パラメータに対して、他の値は受け入れられません。

  • TD_GENERALパラメータ形式は、UDFパラメータに標識パラメータがないことを定義します。

    TD_GENERALパラメータ形式では、コード本体でnullデータを指定できません。

  • JAVAパラメータ形式は、行レベル セキュリティ ポリシー関数ではサポートされません。

SQLパラメータ形式では、コード本体でnullデータを指定できます。これはTD_GENERALパラメータ形式では不可能です。

PARAMETER STYLE句は、以下の2つの箇所のいずれかで指定できます。
  • SQL DATA ACCESS句
  • 外部関数名

同じユーザー定義関数定義文の中の両方の箇所でパラメータ形式を指定することはできません。UDF定義ごとに1つのパラメータ形式だけが許可されます。

行レベル セキュリティ制約UDFに固有のパラメータ形式情報の詳細については、行レベル セキュリティ関数のパラメータ形式の一般的なルールを参照してください。

この2つのオプションの詳細について、<Teradata Vantage™- SQL外部ルーチン プログラミング、B035-1147>を参照してください。