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 SQLBindParameter() binds three input application variables containing UTF-8 to the parameter markers.
Figure 1. An application that binds application variables to 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 );