Se muestra información para los atributos de tipo de datos siguientes:
Precisión
La precisión de una columna numérica o parámetro hace referencia al número
máximo de dígitos que utiliza el tipo de datos de la columna o
parámetro. La precisión de una columna no numérica o parámetro hace
referencia generalmente a la longitud máxima o a la longitud definida de la
columna o parámetro. La tabla siguiente define la precisión para cada
tipo de datos SQL.
fSqlType | Precisión |
---|---|
SQL_CHAR SQL_VARCHAR | La longitud definida de la columna o parámetro. Por ejemplo, la precisión de una columna definida como CHAR(10) es 10. |
SQL_DECIMAL | El número máximo de dígitos definido. Por ejemplo, la precisión de una columna definida como DECIMAL(10,3) es 10. |
SQL_SMALLINT a | 5 |
SQL_INTEGER a | 10 |
SQL_BLOB | La longitud definida de la columna o parámetro. Por ejemplo, la precisión de una columna definida como BLOB(10) es 10. |
SQL_DATE a | 10 (el número de caracteres en el formato aaaa-mm-dd). |
SQL_TIME a | 8 (el número de caracteres en el formato hh:mm:ss). |
SQL_TIMESTAMP | 26 (El número de caracteres en el formato "aaaa-mm-dd-hh.mm.ss.ffffff" que utiliza el tipo de datos de TIMESTAMP.) |
a: El argumento cbParamDef de SQLBindParameter() se ignora para este tipo de datos.
Escala
La escala de una columna numérica o parámetro hace referencia al número
máximo de dígitos a la derecha de la coma decimal. La tabla siguiente
define la escala para cada tipo de datos SQL.
fSqlType | Escala |
---|---|
SQL_CHAR SQL_VARCHAR | No aplicable. |
SQL_DECIMAL | El número de dígitos definido a la derecha de la coma decimal. Por ejemplo, la escala de una columna definida como DECIMAL(10, 3) es 3. |
SQL_SMALLINT SQL_INTEGER | 0 |
SQL_BLOB | No aplicable. |
SQL_DATE SQL_TIME | No aplicable. |
SQL_TIMESTAMP | 6 (El número de dígitos a la derecha de la coma decimal en el formato "aaaa-mm-dd-hh.mm.ss.ffffff".) |
Longitud
La longitud de una columna es el número máximo de bytes devueltos a la aplicación en el momento en que los datos se transfieren a su tipo de datos C por omisión. Para los datos de tipo carácter, la longitud no incluye el byte de finalización de nulo. Tenga en cuenta que la longitud de una columna puede ser diferente del número de bytes que se necesitan para almacenar los datos en la fuente de datos.
La tabla siguiente define la longitud para cada tipo de datos SQL.
fSqlType | Longitud |
---|---|
SQL_CHAR SQL_VARCHAR | La longitud definida de la columna. Por ejemplo, la longitud de una columna definida como CHAR(10) es 10. |
SQL_DECIMAL | El número máximo de dígitos más dos. Puesto que estos tipos de datos se devuelven como series de caracteres, se necesitan caracteres para los dígitos, un signo y una coma decimal. Por ejemplo, la longitud de una columna definida como DECIMAL(10,3) es 12. |
SQL_SMALLINT | 2 (dos bytes). |
SQL_INTEGER | 4 (cuatro bytes). |
SQL_BLOB | La longitud definida de la columna. Por ejemplo, la longitud de una columna definida como BLOB(10) es 10. |
SQL_DATE SQL_TIME | 6 (el tamaño de la estructura DATE_STRUCT o TIME_STRUCT). |
SQL_TIMESTAMP | 16 (el tamaño de la estructura TIMESTAMP_STRUCT). |
Tamaño de pantalla
El tamaño de pantalla de una columna es el número máximo de bytes
necesarios para visualizar datos en formulario de caracteres. La tabla
siguiente define el tamaño de pantalla para cada tipo de datos SQL.
fSqlType | Tamaño de pantalla |
---|---|
SQL_CHAR SQL_VARCHAR | La longitud definida de la columna. Por ejemplo, el tamaño de pantalla de una columna definida como CHAR(10) es 10. |
SQL_DECIMAL | La precisión de la columna más dos (un signo, dígitos de precisión y una coma decimal). Por ejemplo, el tamaño de pantalla de una columna definida como DECIMAL(10,3) es 12. |
SQL_SMALLINT | 6 (un signo y 5 dígitos). |
SQL_INTEGER | 11 (un signo y 10 dígitos). |
SQL_BLOB | La longitud definida de la columna por 2 (cada byte binario está representado por un número hexadecimal de 2 dígitos). Por ejemplo, el tamaño de pantalla de una columna definida como BLOB(10) es 20. |
SQL_DATE | 10 (una fecha en el formato aaaa-mm-dd). |
SQL_TIME | 8 (una hora en el formato hh:mm:ss). |
SQL_TIMESTAMP | 26 (una indicación de fecha y hora en el formato aaaa-mm-dd-hh.mm.ss.ffffff). |