Ich versuche, eine Aggregat UDF-Funktion in Teradata zu erstellen.Array-Definition in Teradata Aggregat UDF
Als Teil davon versuche ich ein Array im Zwischenspeicher zu dekalieren.
Es wirft weiter unten den Fehler, wenn ich versuche, es mit Teradata zu verknüpfen.
Executed as Single statement. Failed [7504 : HY000] in UDF/XSP/UDM DBC.IRR: SQLSTATE U0001:
Elapsed time = 00:00:01.628
STATEMENT 1: Select Statement failed.
Hier ist mein Code, der das Array enthält.
Gibt es etwas falsch mit der Syntax?
#include <sqltypes_td.h>
#include <string.h>
#include <math.h>
typedef struct agr_storage {
FLOAT count;
FLOAT val1,val2,val3,val4;
FLOAT res[100]; // This is my array
} AGR_Storage;
Die Größe eines * Zwischenspeicherblocks * ist auf 64000 Byte und nicht 64 Byte beschränkt: http://www.info.teradata.com/htmlpubs/DB_TTU_15_10/index.html#page/SQL_Reference/B035_1147_151K/C_UDFs. 045.073.html – dnoeth