Tipos de Datos para Sistemas de Bases de Datos Soportados por Qt
Tipos de Datos Recomendados para Sistemas de Bases de Datos Soportados por Qt
Esta tabla muestra los tipos de datos recomendados para extraer datos de las bases de datos soportadas en Qt. Tenga en cuenta que los tipos utilizados en Qt no son necesariamente válidos como tipos de entrada para un sistema de base de datos específico. Por ejemplo, un double podría funcionar perfectamente como entrada para registros de coma flotante en una base de datos concreta, pero no necesariamente como formato de almacenamiento para la salida de esa base de datos, porque se almacenaría con precisión de 64 bits en C++.
Tipos de datos IBM DB2
| Tipo de datos IBM DB2 | Descripción del tipo SQL | Entrada recomendada (tipo de datos C++ o Qt) |
|---|---|---|
| SMALLINT | Entero con signo de 16 bits | typedef qint16 |
| INTEGER | entero con signo de 32 bits | typedef qint32 |
| BIGINT | entero con signo de 64 bits | typedef qint64 |
| REAL | 32-bit coma flotante de precisión simple | typedef qreal |
| DOBLE PRECISIÓN | 64-bit coma flotante de doble precisión | Mapeado a QString para dobles de alta precisión, en caso contrario qreal |
| FLOAT | 64-bit coma flotante de doble precisión | typedef qreal |
| CHAR | Cadena de caracteres de longitud fija y terminación nula | Asignado a QString |
| VARCHAR | Cadena de longitud variable con terminación nula | Asignado a QString |
| LONG VARCHAR | Cadena de caracteres de longitud variable no terminada en cero | Asignado a QString |
| BLOB | Cadena binaria variable no terminada en cero con indicador de longitud de cadena de 4 bytes | Asignado a QByteArray |
| CLOB | Objeto de cadena de caracteres grandes | Asignado a QString |
| DATE | Cadena de caracteres terminada en cero con el siguiente formato: aaaa-mm-dd | Asignado a QDate |
| HORA | Cadena de caracteres de terminación nula con el siguiente formato: hh.mm.ss | Asignado a QTime |
| TIMESTAMP | Cadena de caracteres de terminación nula con el siguiente formato: aaaa-mm-dd-hh.mm.ss.nnnnnn | Asignado a QDateTime |
Tipos de datos Borland InterBase
| Tipo de datos Borland InterBase | Descripción del tipo SQL | Entrada recomendada (tipo de datos C++ o Qt) |
|---|---|---|
| BOOLEAN | Booleano | bool |
| TINYINT | Entero con signo de 8 bits | typedef qint8 |
| SMALLINT | entero con signo de 16 bits | typedef qint16 |
| INTEGER | entero con signo de 32 bits | typedef qint32 |
| BIGINT LONG | entero con signo de 64 bits | typedef qint64 |
| REAL FLOAT | coma flotante de 32 bits | typedef qreal |
| FLOAT | coma flotante de 64 bits | typedef qreal |
| DOUBLE | 64-bit coma flotante | typedef qreal |
| DOBLE PRECISIÓN | 64-bit coma flotante de doble precisión | Mapeado a QString para dobles de alta precisión, en caso contrario qreal |
| CADENA VARCHAR | Cadena de caracteres, Unicode | Asignado a QString |
| CLOB | Objeto de cadena de caracteres de gran tamaño | Asignado a QString |
| DATE | Muestra la fecha. Formato: 'aaaa-mm-dd' | Asignado a QDate |
| HORA | Muestra la hora. El formato es 'hh:mm:ss' en formato de 24 horas | Asignado a QTime |
| TIMESTAMP | Muestra una marca de tiempo. El formato es "aaaa-mm-dd hh:mm:ss". | Asignado a QDateTime |
Tipos de datos MySQL
| Tipo de datos MySQL | Descripción del tipo SQL | Entrada recomendada (tipo de datos C++ o Qt) |
|---|---|---|
| TINYINT | entero con signo de 8 bits | typedef qint8 |
| TINYINT UNSIGNED | entero de 8 bits sin signo | typedef quint8 |
| SMALLINT | entero con signo de 16 bits | typedef qint16 |
| SMALLINT SIN SIGNO | entero de 16 bits sin signo | typedef quint16 |
| INT | entero con signo de 32 bits | typedef qint32 |
| INT SIN SIGNO | Entero de 32 bits sin signo | typedef quint32 |
| BIGINT | Entero con signo de 64 bits | typedef qint64 |
| FLOAT | Punto flotante de 32 bits | typedef qreal |
| DOUBLE | coma flotante de 64 bits | Asignado a QString para dobles de alta precisión, en caso contrario qreal |
| CHAR | Cadena de caracteres | Asignado a QString |
| VARCHAR | Cadena de caracteres | Asignado a QString |
| TINYTEXT | Cadena de caracteres | Asignado a QString |
| TEXTO | Cadena de caracteres | Asignado a QString |
| MEDIUMTEXT | Cadena de caracteres | Asignado a QString |
| TEXTO LARGO | Cadena de caracteres | Asignado a QString |
| CLOB | Objeto de cadena de caracteres grandes | Asignado a QString |
| todos los tipos BLOB | BLOB | Asignado a QByteArray |
| FECHA | Fecha sin hora | Asignado a QDate |
| DATETIME | Fecha y hora | Asignado a QDateTime |
| TIMESTAMP | Fecha y hora | Asignado a QDateTime |
| HORA | Hora | Asignado a QTime |
| AÑO | Año (int) | Asignado a QDateTime |
| ENUM | Enumeración de conjunto de valores | Asignado a QString |
Tipos de datos de Oracle Call Interface
| Tipo de datos de Oracle Call Interface | Descripción del tipo SQL | Entrada recomendada (tipo de datos C++ o Qt) |
|---|---|---|
| NÚMERO | FLOAT, DOUBLE, PRECISIONc REAL | Mapeado a QString para dobles de alta precisión, en caso contrario qreal |
| NÚMERO(38) | INTEGER INT SMALLINT | typedef qint8/16/32/64 |
| NUMBER(p,s) | NUMERIC(p,s) DECIMAL(p,s)a | Asignado a QString |
| NVARCHAR2(n) | Cadena de caracteres (NATIONAL CHARACTER VARYING(n) NATIONAL CHAR VARYING(n) NCHAR VARYING(n)) | Asignado a QString |
| NCHAR(n) | Cadena de caracteres (CARÁCTER NACIONAL(n) CARÁCTER NACIONAL(n) NCHAR(n)) | Asignado a QString |
| CHAR(n) | Cadena de caracteres (CHARACTER(n) CHAR(n)) | Asignado a QString |
| CLOB | Objeto de cadena de caracteres grande | Asignado a QString |
| BLOB | Objeto binario de gran tamaño | Asignado a QByteArray |
| TIMESTAMP | Valores de año, mes y día de la fecha, así como valores de hora, minuto y segundo de la hora | Asignado a QDateTime |
Tipos de datos ODBC
| Tipo de datos ODBC | Descripción del tipo SQL | Entrada recomendada (tipo de datos C++ o Qt) |
|---|---|---|
| BIT | Booleano | BOOL |
| TINYINT | Entero de 8 bits | typedef qint8 |
| SMALLINT | entero con signo de 16 bits | typedef qint16 |
| INTEGER | entero con signo de 32 bits | typedef qint32 |
| BIGINT | entero con signo de 64 bits | typedef qint64 |
| REAL | 32-bit coma flotante de precisión simple | typedef qreal |
| FLOAT | 64-bit coma flotante doble | typedef qreal |
| DOUBLE | 64-bit Doble coma flotante | Mapeado a QString para dobles de alta precisión, en caso contrario qreal |
| CHAR | Cadena de caracteres | Asignado a QString |
| VARCHAR | Cadena de caracteres | Asignado a QString |
| LONGVARCHAR | Cadena de caracteres | Asignado a QString |
| CLOB | Objeto de cadena de caracteres grandes | Asignado a QString |
| FECHA | Cadena de caracteres | Asignado a QDate |
| TIME | Hora, cadena de caracteres | Asignado a QTime |
| TIMESTAMP | Hora, cadena de caracteres | Asignado a QDateTime |
Tipos de datos PostgreSQL
| Tipo de datos PostgreSQL | Descripción del tipo SQL | Entrada recomendada (tipo de datos C++ o Qt) |
|---|---|---|
| BOOLEAN | Booleano | bool |
| SMALLINT | Entero con signo de 16 bits | typedef qint16 |
| INTEGER | entero con signo de 32 bits | typedef qint32 |
| BIGINT | entero con signo de 64 bits | typedef qint64 |
| REAL | 32-bit coma flotante de precisión variable | typedef qreal |
| DOBLE PRECISIÓN | 64-bit coma flotante de precisión variable | Mapeado a QString para dobles de alta precisión, en caso contrario qreal |
| VARIABLE DECIMAL | precisión especificada por el usuario, exacta | typedef qreal |
| VARIABLE NUMÉRICA | precisión especificada por el usuario, exacta | typedef qreal |
| VARCHAR | cadena de caracteres de longitud variable | Asignado a QString |
| CHARACTER | Cadena de caracteres de longitud fija | Asignado a QString |
| TEXTO | Cadena de caracteres de longitud variable | Asignado a QString |
| CLOB | Objeto de cadena de caracteres de longitud variable | Asignado a QString |
| TIMESTAMP | 8 bytes, fecha y hora | Asignado a QDateTime |
| TIMESTAMP | 8 bytes, fecha y hora, con zona horaria | Asignado a QDateTime |
| FECHA | 4 bytes, sólo fechas | Asignado a QDate |
| HORA | 8 bytes, sólo horas del día 00:00:00.00 - 23:59:59.99 | Asignado a QTime |
| HORA | 12 bytes, sólo horas del día, con zona horaria 00:00:00.00+12 | Asignado a QDateTime |
Tipos de datos QSQLITE SQLite versión 3
| Tipos de datos QSQLITE SQLite versión 3 | Descripción del tipo SQL | Entrada recomendada (tipo de datos C++ o Qt) |
|---|---|---|
| NULL | Valor NULL. | NULL |
| INTEGRO | Número entero con signo, almacenado en 8, 16, 24, 32, 48 o 64 bits en función de la magnitud del valor. | typedef qint8/16/32/64 |
| REAL | Valor en coma flotante de 64 bits. | typedef qreal |
| TEXTO | Cadena de caracteres (UTF-8, UTF-16BE o UTF-16-LE). | Asignado a QString |
| CLOB | Objeto de cadena de caracteres de gran tamaño | Asignado a QString |
| BLOB | El valor es un BLOB de datos, almacenado exactamente como se introdujo. | Asignado a QByteArray |
Tipos de datos Mimer SQL
| Tipo Mimer SQL | Descripción del tipo SQL | Entrada recomendada (tipo de datos C++ o Qt) |
|---|---|---|
| SMALLINT | Entero con signo de 16 bits | typedef qint16 |
| INTEGER | entero con signo de 32 bits | typedef qint32 |
| INTEGRO(n) | Número entero con una precisión de hasta 45 dígitos | Asignado a QString |
| BIGINT | Entero con signo de 64 bits | typedef qint64 |
| REAL | 32-bit coma flotante IEEE de precisión simple | typedef float |
| DOBLE PRECISIÓN | 64-bit Punto flotante IEEE de doble precisión | Mapeado a QString para dobles de alta precisión, en caso contrario qreal |
| FLOAT | 64-bit Punto flotante IEEE de doble precisión | Asignado a QString para dobles de alta precisión, de lo contrario qreal |
| FLOAT(n) | Punto flotante con una precisión de hasta 45 dígitos | Asignado a QString |
| DECIMAL(p,s) | Decimal con hasta 45 dígitos de precisión y escala | Asignado a QString |
| CHAR | Cadena de caracteres Latin-1 de longitud fija (CHAR o carácter) | Asignado a QString |
| VARCHAR | Cadena Latin-1 de longitud variable (VARCHAR o CHARACTER VARYING) | Asignado a QString |
| NCHAR | Cadena Unicode de longitud fija (NCHAR o CARÁCTER NACIONAL) | Asignado a QString |
| NVARCHAR | Cadena Unicode de longitud variable (NVARCHAR o CARÁCTER NACIONAL VARIABLE) | Asignado a QString |
| BINARY | Datos binarios de longitud fija | Asignado a QByteArray |
| VARBINARY | Datos binarios de longitud variable (VARBINARY o BINARY VARYING) | Asignado a QByteArray |
| BLOB | Objeto binario de gran tamaño (BLOB o BINARY LARGE OBJECT) | Asignado a QByteArray |
| CLOB | Objeto grande de caracteres latinos-1 (CLOB o CHARACTER LARGE OBJECT) | Asignado a QString |
| NCLOB | Objeto grande de caracteres Unicode (NCLOB o NATIONAL CHARACTER LARGE OBJECT) | Asignado a QString |
| FECHA | Fecha compuesta por año, mes y día | Asignado a QDate |
| HORA | Hora compuesta por horas, minutos y segundos con fracciones de segundo opcionales. | Asignado a QTime |
| TIMESTAMP | Fecha y hora con segundos fraccionarios opcionales | Asignado a QDateTime |
| BUILTIN.UUID | Identificador único universal | Asignado a QUuid |
| BOOLEAN | Booleano | bool |
| INTERVALO AÑO(7) | Año, formato '±yyyyyy' (precisión máxima) | Asignado a QString |
| INTERVAL AÑO(7) A MES | Año a mes, formato '±aaaaaaaa-mm' (precisión máxima) | Asignado a QString |
| INTERVALO MES(7) | Mes, formato "±mmmmmmmmm" (precisión máxima) | Asignado a QString |
| INTERVALO DAY(7) | Día, formato "±ddddddd" (precisión máxima) | Asignado a QString |
| INTERVALO DÍA(7) A HORA | Día a hora, formato "±ddddddd hh" (precisión máxima) | Asignado a QString |
| INTERVALO DÍA(7) A MINUTO | Día a minuto, formato "±ddddddd hh:mm" (precisión máxima) | Asignado a QString |
| INTERVALO DÍA(7) A SEGUNDO(9) | Día a segundo, formato '±ddddddd hh:mm:ss[.fffffffff]' (precisión máxima) | Asignado a QString |
| INTERVALO HORA(8) | Hora, formato '±hhhhhhhh' (precisión máxima) | Asignado a QString |
| INTERVALO HORA(8) A MINUTO | Hora a minuto, formato '±hhhhhhhh:mm' (precisión máxima) | Asignado a QString |
| INTERVALO HORA(8) A SEGUNDO(9) | Hora a segundo, formato '±hhhhhhhh:mm:ss[.fffffffff]' (precisión máxima) | Asignado a QString |
| INTERVALO MINUTO(10) | Minuto, formato '±mmmmmmmmmm' (precisión máxima) | Asignado a QString |
| INTERVALO MINUTO(10) A SEGUNDO(9) | Minuto a segundo, formato '±mmmmmmmmmm:ss[.fffffffff]' (precisión máxima) | Asignado a QString |
| INTERVALO SEGUNDO(12,9) | Segundo, formato '±ssssssssssss[.fffffffff]' (precisión máxima) | Asignado a QString |
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.