Conversión de datos por funciones de CLI de DB2

CLI de DB2 gestiona la transferencia de datos, y su conversión si procede, entre la aplicación y DB2 Everyplace. Antes de que tenga lugar la transferencia de datos propiamente dicha, se indica el tipo de datos fuente, el tipo de datos destino o ambos tipos cuando se llama a SQLBindParameter(), SQLBindCol() o SQLGetData(). Estas funciones utilizan nombres simbólicos (tales como SQL_CHAR y SQL_C_CHAR) para identificar los tipos de datos implicados.

Por ejemplo, para enlazar un marcador de parámetro que corresponde a un tipo de datos de SQL de SQL_VARCHAR, con un tipo de almacenamiento intermedio C de entero largo de una aplicación, la llamada apropiada a SQLBindParameter() tendría este aspecto:

     SQLBindParameter (hstmt, 1, SQL_PARAM_INPUT, SQL_C_LONG,
                       SQL_VARCHAR, 0, 0, long_ptr, 0, NULL);

La Tabla 86 muestra las conversiones soportadas entre los tipos de datos C y de SQL. La primera columna de la Tabla 86 contiene el tipos de datos de SQL. Las columnas restantes representan los tipos de datos C. Si la columna del tipo de datos C contiene:

D
La conversión está soportada y es la conversión por omisión para el tipo de datos de SQL.

X
DB2 Everyplace da soporte a la conversión.

en blanco
DB2 Everyplace no da soporte a la conversión.

Los límites existentes respecto a la precisión, la escala y las reglas para el truncamiento y el redondeo para conversiones de tipos siguen las normas de sintaxis de SQL.


Tabla 86. Conversiones de datos soportadas

SQL, tipo de datos Conversión por omisión Otras conversiones soportadas
BLOB SQL C BINARY SQL C CHAR
CHAR SQL C CHAR SQL C LONG
SQL C SHORT
SQL C TINYINT
SQL C TYPE DATE
SQL C TYPE TIME
SQL C BINARY
SQL C BIT
SQL C TYPE TIMESTAMP
DATE SQL C TYPE DATE SQL C CHAR
DECIMAL SQL C CHAR SQL C LONG
SQL C SHORT
SQL C TINYINT
SQL C BIT
INTEGER SQL C LONG SQL C CHAR
SQL C SHORT
SQL C TINYINT
SQL C FLOAT
SQL C DOUBLE
SQL C BIT
SMALLINT SQL C SHORT SQL C CHAR
SQL C LONG
SQL C TINYINT
SQL C FLOAT
SQL C DOUBLE
SQL C BIT
TIME SQL C TYPE TIME SQL C CHAR
TIMESTAMP SQL C TYPE TIMESTAMP SQL C CHAR
VARCHAR SQL C CHAR SQL C LONG
SQL C SHORT
SQL C TINYINT
SQL C TYPE DATE
SQL C TYPE TIME
SQL C BINARY
SQL C BIT
SQL C TYPE TIMESTAMP

Consulta relacionada