Ejecución de las UDF de stringpad
Después de crear los programas C++ que contienen sus llamadas SPUPad, los compila utilizando ' nzudxcompile y los registra en el sistema Netezza Performance Server. For an example of the CREATE [OR REPLACE] FUNCTION commands to register these sample UDFs, see El programa de ejemplo " string_pad_create.cpp and El programa de ejemplo " string_pad_get.cpp . Estas funciones se pueden guardar fácilmente en un programa C++; después de compilar el programa, utilice el mandato CREATE [OR REPLACE] FUNCTION para registrar cada una de las funciones como UDF separadas.
Después de compilar y registrar las UDF, puede ejecutarlas. Por ejemplo, la siguiente secuencia de comandos que se introduce en la solicitud nzsql muestra cómo estas funciones procesan datos. Los mandatos se procesan dentro de un bloque de transacción por lo que la SPUPad aún existe para la función string_pad_get.
MYDB.SCHEMA(MYUSER)=> BEGIN TRANSACTION;
BEGIN
MYDB.SCHEMA(MYUSER)=> SELECT string_pad_create(10, 'netezza') FROM
one_dslice;
STRING_PAD_CREATE
-------------------
t
(1 row)
MYDB.SCHEMA(MYUSER)=> SELECT string_pad_get(0) FROM one_dslice;
STRING_PAD_GET
----------------
n
(1 row)
MYDB.SCHEMA(MYUSER)=> SELECT string_pad_get(1) FROM one_dslice;
STRING_PAD_GET
----------------
e
(1 row)
MYDB.SCHEMA(MYUSER)=> SELECT string_pad_get(2) FROM one_dslice;
STRING_PAD_GET
----------------
t
(1 row)
MYDB.SCHEMA(MYUSER)=> COMMIT;
COMMIT
MYDB.SCHEMA(MYUSER)=> select string_pad_get(0) from one_dslice; ERROR: Pad does not exist