Apéndice D: Tipo de datos

ODBC define dos conjuntos de tipos de datos: tipos de datos SQL y tipos de datos de C. Los tipos de datos SQL indican el tipo de datos almacenados en el origen de datos. Los tipos de datos C indican el tipo de datos almacenados en búferes de aplicación.

Cada DBMS define los tipos de datos SQL de acuerdo con el estándar SQL-92. Para cada tipo de datos SQL especificado en el estándar SQL-92, ODBC define un identificador de tipo, que es un valor de #define que se pasa como argumento en funciones ODBC o se devuelve en los metadatos de un conjunto de resultados. Los únicos tipos de datos SQL-92 no admitidos por ODBC son BIT (el tipo de SQL_BIT ODBC tiene características diferentes), BIT_VARYING, TIME_WITH_TIMEZONE, TIMESTAMP_WITH_TIMEZONE y NATIONAL_CHARACTER. Los controladores son responsables de asignar tipos de datos SQL específicos del origen de datos a identificadores de tipo de datos SQL ODBC y identificadores de tipo de datos SQL específicos del controlador. El tipo de datos SQL se especifica en el campo SQL_DESC_CONCISE_TYPE de un descriptor de implementación.

ODBC define los tipos de datos de C y sus identificadores de tipo ODBC correspondientes. Una aplicación especifica el tipo de datos C del búfer que recibirá los datos del conjunto de resultados pasando el identificador de tipo C adecuado en el argumento TargetType en una llamada a SQLBindCol o SQLGetData. Especifica el tipo C del búfer que contiene un parámetro de instrucción pasando el identificador de tipo C adecuado en el argumento ValueType en una llamada a SQLBindParameter. El tipo de datos C se especifica en el campo SQL_DESC_CONCISE_TYPE de un descriptor de aplicación.

Nota

No hay tipos de datos de C específicos del controlador.

Cada tipo de datos SQL corresponde a un tipo de datos ODBC C. Antes de devolver datos del origen de datos, el controlador lo convierte en el tipo de datos de C especificado. Antes de enviar datos al origen de datos, el controlador lo convierte del tipo de datos de C especificado.

Este apéndice contiene los temas siguientes.

Para obtener una explicación de los tipos de datos ODBC, vea Tipos de datos en ODBC. Para información sobre los tipos de datos SQL específicos del controlador, consulte la documentación del controlador.