The following sample description of the SQLDA is for the C programming language. It provides a sample SQLDA definition and definition statements for all DB2 datatypes.
/* Sample SQLDA declaration and #defines for all DB2 datatypes. */
#ifndef SQLDA_DEF
#define SQLDA_DEF
struct SQLDA {
unsigned char sqldaid[8];
long sqldabc;
short sqln;
short sqld;
struct sqlvar {
short sqltype;
union {
short sqllen;
struct {
unsigned char precision;
unsigned char scale;
} SQLDECIMAL;
} SQLLEN;
unsigned char *sqldata;
short *sqlind;
struct sqlname {
short length;
unsigned char data [30];
} sqlname;
} sqlvar[0];
};
#define DATE 384 /* SQLTYPE for DATE */ #define NDATE 385 /* SQLTYPE for DATE w/NULL */ #define TIME 388 /* SQLTYPE for TIME */ #define NTIME 389 /* SQLTYPE for TIME w/NULL */ #define TIMESTAMP 392 /* SQLTYPE for TIMESTAMP */ #define NTIMESTAMP 393 /* SQLTYPE for TIMESTAMP W/NULL */ #define VARCHAR 448 /* SQLTYPE for VARCHAR */ #define NVARCHAR 449 /* SQLTYPE for VARCHAR w/NULL */ #define CHAR 452 /* SQLTYPE for CVARCHAR */ #define NCHAR 453 /* SQLTYPE for VARCHAR w/NULL */ #define LONGVARCHAR 456 /* SQLTYPE for LONG VARCHAR */ #define NLONGVARCHAR 457 /* SQLTYPE for LVARCHAR w/ NULL */ #define FLOAT 480 /* SQLTYPE for FLOAT */ #define NFLOAT 481 /* SQLTYPE for FLOAT w/ NULL */ #define DECIMAL 48 /* SQLTYPE for DECIMAL */ #define NDECIMAL 485 /* SQLTYPE for DECIMAL w/ NULLS */ #define INTEGER 496 /* SQLTYPE for INTEGER */ #define NINTEGER 497 /* SQLTYPE for INTEGER w/ NULL */ #define SMALLINT 500 /* SQLTYPE for SMALLINT */ #define NSMALLINT 501 /* SQLTYPE for SMALL w/ NULL */
#endif