汎用グローバル関数を作成する1つの方法は、最初に作成するUDFのためのC/C++関数の中でコードを供給することです。
例えば、次のような汎用グローバル関数があるとします。
/***** Source code filename: global1.c *****/ int global1( char *text1) { ... }
最初のUDFのCコードで、汎用グローバル関数を次のように宣言します。
/***** Source code filename: udf1.c *****/ #define SQL_TEXT Latin_Text #include <sqltypes_td.h> external global1(char *text1); void udf1(CHARACTER *a, INTEGER *result, ... ) { int global_result; global_result = global1(a); ... }
対応するCREATE FUNCTION文では、次のようにして、汎用グローバル関数と最初のUDFのソースを指定する必要があります。
CREATE FUNCTION UDF1(A CHAR(30) CHARACTER SET LATIN) RETURNS INTEGER ... EXTERNAL NAME 'CS!global1!global1.c!CS!udf1!udf1.c';