Example of binding UTF-8 data to parameter markers
You can use SQLBindParameter() to bind
application variables that contain UTF-8 data to INTEGER, CHAR, and
GRAPHIC parameter markers.
The following example shows how Figure 1. An application
that binds application variables to parameter markers
SQLBindParameter() binds
three input application variables containing UTF-8 to the parameter
markers./* Declare variables for Unicode UTF-8 data */
SQLCHAR HV1INT [50];
SQLCHAR HV1CHAR [50];
SQLCHAR HV1GRAPHIC[50];
SQLINTEGER LEN_HV1INT;
SQLINTEGER LEN_HV1CHAR;
SQLINTEGER LEN_HV1GRAPHIC;
...
/* Assume CURRENTAPPENSCH=UNICODE is set */
/* Bind to DB2 INTEGER */
SQLBindParameter( (SQLHSTMT) hstmt,
(SQLUSMALLINT) 1,
(SQLSMALLINT) SQL_PARAM_INPUT,
(SQLSMALLINT) SQL_C_CHAR,
(SQLSMALLINT) SQL_INTEGER,
(SQLUINTEGER) 0,
(SQLSMALLINT) 0,
(SQLPOINTER) HV1INT,
(SQLINTEGER) sizeof(HV1INT),
(SQLINTEGER *) &LEN_HV1INT ),
/* Bind to DB2 CHAR(10) */
SQLBindParameter( (SQLHSTMT) hstmt,
(SQLUSMALLINT) 2,
(SQLSMALLINT) SQL_PARAM_INPUT,
(SQLSMALLINT) SQL_C_CHAR,
(SQLSMALLINT) SQL_CHAR,
(SQLUINTEGER) 10,
(SQLSMALLINT) 0,
(SQLPOINTER) HV1CHAR,
(SQLINTEGER) sizeof(HV1CHAR),
(SQLINTEGER *) &LEN_HV1CHAR ),
/* Bind to DB2 GRAPHIC(20) */
SQLBindParameter( (SQLHSTMT) hstmt,
(SQLUSMALLINT) 3,
(SQLSMALLINT) SQL_PARAM_INPUT,
(SQLSMALLINT) SQL_C_CHAR,
(SQLSMALLINT) SQL_GRAPHIC,
(SQLUINTEGER) 20,
(SQLSMALLINT) 0,
(SQLPOINTER) HV1GRAPHIC,
(SQLINTEGER) sizeof(HV1GRAPHIC),
(SQLINTEGER *) &LEN_HV1GRAPHIC );