17.00 - 17.05 - C/C++関数名 - 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
日本語 (日本)

CまたはC++ソース コードで使用する関数の名前はCの関数命名規則に従い、さらに名前は30文字以下でなければならないという制限が適用されます。

C++では、関数名がC++オーバーロード名に変換されないようにするために、関数定義の先頭にextern "C"を記述する必要があります。例えば、次のようになります。

extern "C" 
void f1( INTEGER *a, INTEGER *result, char sqlstate[6])
{
   ...
}

この関数は、C++で作成されたすべてのモジュールを呼び出すことができます。

CREATE FUNCTION文またはREPLACE FUNCTION文を使用してUDFをインストールする際には、CまたはC++の関数名を指定します。詳細は、C/C++関数名の指定を参照してください。

Linuxシステムでは、長い名前を使用するとUDFのインストール時にエラーが発生することがあります。詳細については、「Arg list too long」および「Argument list too long」エラーのトラブルシューティングを参照してください。

CまたはC++の関数名とUDF名のオーバーロードとの関係については、関数名のオーバーロードを参照してください。