UDFでは、CLOBまたはBLOBの引数および戻り値を定義し、ロケータによってそれらを渡すことができます。
LOB型を使用するスカラー関数を宣言する方法を示す例を以下に示します。
/***** C source file name: udfsamp.c *****/ #define SQL_TEXT Latin_Text #include <sqltypes_td.h> void do_something( LOB_LOCATOR *a, LOB_RESULT_LOCATOR *result, char sqlstate[6] ) { ... }
対応するCREATE FUNCTION文は、以下のようになります。
CREATE FUNCTION DO_SOMETHING(A BLOB AS LOCATOR) RETURNS BLOB AS LOCATOR LANGUAGE C NO SQL PARAMETER STYLE TD_GENERAL EXTERNAL NAME 'CS!udfsamp!td_udf/udfsamp.c';
LOB_LOCATORおよびLOB_RESULT_LOCATOR Cデータ型の詳細については、Cデータ型を参照してください。