17.00 - 17.05 - UDFの位置 - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - SQL外部ルーチン プログラミング

Product
Advanced SQL Engine
Teradata Database
Release Number
17.00
17.05
Published
2020年6月
Content Type
プログラミング リファレンス
Publication ID
B035-1147-170K-JPN
Language
日本語 (日本)

関数呼び出しがデータベース名で修飾されている場合、Vantageは指定されたデータベースからのみ検索されます。

データベース名を省略した場合、Vantageは次の順序でUDFを検索します。

  1. SET SESSION UDFSEARCHPATH文で指定されたパス(設定されている場合)。<Teradata Vantage™ - SQLデータ定義言語-構文規則および例、B035-1144>を参照してください。
  2. UDFでUDTのキャスト、整列、または変換の機能が実装されている場合、SYSUDTLIBデータベースが検索されます。
    そのような関数の存在 結果
    そのような関数が存在し、関数呼び出しの引数がその関数のパラメータと互換であり、優先順位に従っている場合 検索はそこで停止します。

    複数の関数が存在する場合、Teradata Databaseは、そのうち最適の関数がどれかを決定する必要があります。詳細は、オーバーロード関数の呼び出しを参照してください。

    そのような関数が存在しないか、または関数呼び出しの引数がその関数のパラメータと互換性がない場合 その文はエラーを戻します。
  3. デフォルト データベースから、その関数呼び出しと同じ名前、同じパラメータ数の関数を検索します。
    そのような関数の存在 結果
    そのような関数が存在し、関数呼び出しの引数がその関数のパラメータと互換であり、優先順位に従っている場合 検索はそこで停止します。

    データベースの中に同じ名前の関数が複数個存在する場合、Vantageは、そのうち最適の関数がどれかを決定する必要があります。詳細は、オーバーロード関数の呼び出しを参照してください。

    そのような関数が存在しないか、または関数呼び出しの引数がその関数のパラメータと互換性がない場合 検索は続行されます。
  4. SYSLIBデータベースから、その関数呼び出しと同じ名前、同じパラメータ数の関数を検索します。
    そのような関数の存在 結果
    そのような関数が存在し、関数呼び出しの引数がその関数のパラメータと互換であり、優先順位に従っている場合 検索はそこで停止します。

    複数の関数が存在する場合、Vantageは、そのうち最適の関数がどれかを決定する必要があります。詳細は、オーバーロード関数の呼び出しを参照してください。

    そのような関数が存在しないか、または関数呼び出しの引数がその関数のパラメータと互換性がない場合 その文はエラーを戻します。

互換性優先順位のルールについては、互換データ型を参照してください。