Sur cette page

Types de données pour les systèmes de bases de données pris en charge par Qt

Ce tableau présente les types de données recommandés pour l'extraction de données à partir des bases de données prises en charge par Qt. Notez que les types utilisés dans Qt ne sont pas nécessairement valides en tant que types d'entrée pour un système de base de données spécifique. Par exemple, un type « double » peut parfaitement convenir comme entrée pour des enregistrements à virgule flottante dans une base de données donnée, mais pas nécessairement comme format de stockage pour les données issues de cette base, car il serait stocké avec une précision de 64 bits en C++.

Types de données IBM DB2

Type de données IBM DB2Description du type SQLEntrée recommandée (type de données C++ ou Qt)
SMALLINTEntier signé de 16 bitstypedef qint16
INTEGEREntier signé de 32 bitstypedef qint32
BIGINTEntier signé de 64 bitstypedef qint64
REALNombre à virgule flottante simple précision de 32 bitstypedef qreal
DOUBLE PRÉCISIONNombre à virgule flottante double précision 64 bitsMappé sur QString pour les doubles haute précision, sinon qreal
FLOATNombre à virgule flottante en double précision sur 64 bitstypedef qreal
CHARChaîne de caractères de longueur fixe, terminée par un caractère nulMappé vers QString
VARCHARChaîne de longueur variable terminée par un caractère nulCorrespond à QString
LONG VARCHARChaîne de caractères de longueur variable non terminée par un caractère nulCorrespond à QString
BLOBChaîne binaire de longueur variable non terminée par un caractère nul, avec un indicateur de longueur de chaîne de 4 octetsCorrespond à QByteArray
CLOBObjet de chaîne de caractères de grande tailleCorrespond à QString
DATEChaîne de caractères terminée par un caractère nul, au format suivant : aaaa-mm-jjCorrespond à QDate
TIMEChaîne de caractères terminée par un caractère nul, au format suivant : hh.mm.ssCorrespond à QTime
TIMESTAMPChaîne de caractères terminée par un caractère nul, au format suivant : aaaa-mm-jj-hh.mm.ss.nnnnnnCorrespond à QDateTime

Types de données Borland InterBase

Type de données Borland InterBaseDescription du type SQLEntrée recommandée (type de données C++ ou Qt)
BOOLEANBooléenbool
TINYINTEntier signé de 8 bitstypedef qint8
SMALLINTEntier signé de 16 bitstypedef qint16
INTEGEREntier signé de 32 bitstypedef qint32
BIGINT LONGEntier signé de 64 bitstypedef qint64
REAL FLOATNombre à virgule flottante de 32 bitstypedef qreal
FLOATNombre à virgule flottante 64 bitstypedef qreal
DOUBLENombre à virgule flottante 64 bitstypedef qreal
DOUBLE PRÉCISIONNombre à virgule flottante double précision 64 bitsMappé sur QString pour les doubles haute précision, sinon qreal
CHAÎNE VARCHARChaîne de caractères, UnicodeMappé vers QString
CLOBObjet de chaîne de caractères de grande tailleCorrespond à QString
DATEAffiche la date. Format : « aaaa-mm-jj »Correspond à QDate
TIMEAffiche l'heure. Le format est « hh:mm:ss » au format 24 heuresCorrespond à QTime
TIMESTAMPAffiche un horodatage. Le format est « aaaa-mm-jj hh:mm:ss »Correspond à QDateTime

Types de données MySQL

Type de données MySQLDescription du type SQLEntrée recommandée (type de données C++ ou Qt)
TINYINTEntier signé de 8 bitstypedef qint8
TINYINT SANS SIGNEEntier non signé de 8 bitstypedef quint8
SMALLINTEntier signé de 16 bitstypedef qint16
SMALLINT NON SIGNÉEntier non signé de 16 bitstypedef quint16
INTEntier signé de 32 bitstypedef qint32
INT NON SIGNÉEntier non signé de 32 bitstypedef quint32
BIGINTEntier signé de 64 bitstypedef qint64
FLOATNombre à virgule flottante 32 bitstypedef qreal
DOUBLENombre à virgule flottante 64 bitsMappé sur ` QString ` pour les doubles haute précision, sinon `qreal`
CHARChaîne de caractèresMappé sur QString
VARCHARChaîne de caractèresCorrespond à QString
TINYTEXTChaîne de caractèresCorrespond à QString
TEXTChaîne de caractèresCorrespond à QString
MEDIUMTEXTChaîne de caractèresMappé vers QString
LONGTEXTChaîne de caractèresMappé à QString
CLOBObjet de chaîne de caractères de grande tailleMappé vers QString
tous les types BLOBBLOBCorrespond à QByteArray
DATEDate sans heureCorrespond à QDate
DATETIMEDate et heureCorrespond à QDateTime
TIMESTAMPDate et heureCorrespond à QDateTime
TIMEHeureCorrespond à QTime
ANNÉEAnnée (entier)Correspond à QDateTime
ENUMÉnumération d'un ensemble de valeursCorrespond à QString

Types de données de l'interface d'appel Oracle

Type de données de l'interface d'appel OracleDescription du type SQLEntrée recommandée (type de données C++ ou Qt)
NUMBERFLOAT, DOUBLE, PRECISIONc REALMappé sur QString pour les doubles haute précision, sinon qreal
NUMBER(38)INTEGER INT SMALLINTtypedef qint8/16/32/64
NUMBER(p,s)NUMERIC(p,s) DECIMAL(p,s)aCorrespond à QString
NVARCHAR2(n)Chaîne de caractères (NATIONAL CHARACTER VARYING(n) NATIONAL CHAR VARYING(n) NCHAR VARYING(n))Mappé vers QString
NCHAR(n)Chaîne de caractères (NATIONAL CHARACTER(n) NATIONAL CHAR(n) NCHAR(n))Correspond à QString
CHAR(n)Chaîne de caractères (CHARACTER(n) CHAR(n))Correspond à QString
CLOBObjet de chaîne de caractères de grande tailleCorrespond à QString
BLOBObjet binaire de grande tailleCorrespond à QByteArray
TIMESTAMPValeurs de l'année, du mois et du jour de la date, ainsi que les valeurs de l'heure, des minutes et des secondes de l'heureCorrespond à QDateTime

Types de données ODBC

Type de données ODBCDescription du type SQLEntrée recommandée (type de données C++ ou Qt)
BITBooléenBOOL
TINYINTEntier de 8 bitstypedef qint8
SMALLINTEntier signé de 16 bitstypedef qint16
INTEGEREntier signé de 32 bitstypedef qint32
BIGINTEntier signé de 64 bitstypedef qint64
REALNombre à virgule flottante simple précision de 32 bitstypedef qreal
FLOATNombre à virgule flottante double de 64 bitstypedef qreal
DOUBLENombre à virgule flottante double de 64 bitsMappé sur QString pour les doubles haute précision, sinon qreal
CHARChaîne de caractèresCorrespond à QString
VARCHARChaîne de caractèresCorrespond à QString
LONGVARCHARChaîne de caractèresCorrespond à QString
CLOBObjet de chaîne de caractères de grande tailleMappé vers QString
DATEChaîne de caractèresCorrespond à QDate
TIMECaractère Heure, chaîne de caractèresCorrespond à QTime
TIMESTAMPHeure sous forme de caractères, chaîne de caractèresMappé vers QDateTime

Types de données PostgreSQL

Type de données PostgreSQLDescription du type SQLEntrée recommandée (type de données C++ ou Qt)
BOOLEANBooléenbool
SMALLINTEntier signé de 16 bitstypedef qint16
INTEGEREntier signé de 32 bitstypedef qint32
BIGINTEntier signé de 64 bitstypedef qint64
REALNombre à virgule flottante à précision variable de 32 bitstypedef qreal
DOUBLE PRÉCISIONNombre à virgule flottante à précision variable de 64 bitsMappé sur ` QString ` pour les doubles haute précision, sinon `qreal`
VARIABLE DÉCIMALEprécision définie par l'utilisateur, exactetypedef qreal
VARIABLE NUMÉRIQUEprécision définie par l'utilisateur, exactetypedef qreal
VARCHARchaîne de caractères de longueur variableMappée à QString
CHARACTERChaîne de caractères de longueur fixeMappé vers QString
TEXTChaîne de caractères de longueur variableMappée vers QString
CLOBObjet de chaîne de caractères de grande tailleMappé vers QString
TIMESTAMP8 octets, date et heureCorrespond à QDateTime
TIMESTAMP8 octets, date et heure, avec fuseau horaireCorrespond à QDateTime
DATE4 octets, date uniquementCorrespond à QDate
TIME8 octets, heures de la journée uniquement 00:00:00.00 - 23:59:59.99Correspond à QTime
TIME12 octets, heure du jour uniquement, avec fuseau horaire 00:00:00.00+12Correspond à QDateTime

QSQLITE : types de données SQLite version 3

Type de données QSQLITE (SQLite version 3)Description du type SQLEntrée recommandée (type de données C++ ou Qt)
NULLValeur NULL.NULL
INTEGEREntier signé, stocké sur 8, 16, 24, 32, 48 ou 64 bits selon la magnitude de la valeur.typedef qint8/16/32/64
REALValeur à virgule flottante sur 64 bits.typedef qreal
TEXTChaîne de caractères (UTF-8, UTF-16BE ou UTF-16-LE).Mappée à QString
CLOBObjet de chaîne de caractères de grande tailleMappé vers QString
BLOBLa valeur est un BLOB de données, stocké exactement tel qu’il a été saisi.Correspond à QByteArray

Types de données Mimer SQL

Type Mimer SQLDescription du type SQLEntrée recommandée (type de données C++ ou Qt)
SMALLINTEntier signé sur 16 bitstypedef qint16
INTEGEREntier signé de 32 bitstypedef qint32
INTEGER(n)Entier avec une précision pouvant aller jusqu'à 45 chiffresCorrespond à QString
BIGINTEntier signé de 64 bitstypedef qint64
REALNombre à virgule flottante IEEE simple précision 32 bitstypedef float
DOUBLE PRÉCISIONNombre à virgule flottante IEEE à double précision 64 bitsMappé sur QString pour les doubles haute précision, sinon qreal
FLOATNombre à virgule flottante IEEE double précision 64 bitsMappé sur QString pour les doubles haute précision, sinon qreal
FLOAT(n)Nombre à virgule flottante avec une précision pouvant atteindre 45 chiffresCorrespond à QString
DECIMAL(p,s)Nombre décimal avec une précision et une échelle pouvant atteindre 45 chiffresCorrespond à QString
CHARChaîne de caractères Latin-1 de longueur fixe (CHAR ou caractère)Mappé vers QString
VARCHARChaîne Latin-1 de longueur variable (VARCHAR ou CHARACTER VARYING)Correspond à QString
NCHARChaîne Unicode de longueur fixe (NCHAR ou NATIONAL CHARACTER)Mappé vers QString
NVARCHARChaîne Unicode à longueur variable (NVARCHAR ou NATIONAL CHARACTER VARYING)Correspond à QString
BINARYDonnées binaires de longueur fixeMappé vers QByteArray
VARBINARYDonnées binaires à longueur variable (VARBINARY ou BINARY VARYING)Correspond à QByteArray
BLOBObjet binaire de grande taille (BLOB ou BINARY LARGE OBJECT)Correspond à QByteArray
CLOBObjet de grande taille de type caractère Latin-1 (CLOB ou CHARACTER LARGE OBJECT)Correspond à QString
NCLOBObjet de type caractère Unicode de grande taille (NCLOB ou NATIONAL CHARACTER LARGE OBJECT)Correspond à QString
DATEDate composée de l'année, du mois et du jourCorrespond à QDate
TIMEHeure composée d'heures, de minutes et de secondes, avec des fractions de seconde facultativesCorrespond à QTime
TIMESTAMPDate et heure avec fractions de seconde facultativesCorrespond à QDateTime
BUILTIN.UUIDIdentifiant unique universelCorrespond à QUuid
BOOLEANBooléenbool
INTERVAL YEAR(7)Année, format « ±yyyyyyy » (précision maximale)Mappé vers QString
INTERVAL YEAR(7) TO MONTHDe l'année au mois, format « ±yyyyyyy-mm » (précision maximale)Converti en QString
INTERVAL MONTH(7)Mois, format « ±mmmmmmm » (précision maximale)Correspond à QString
INTERVAL DAY(7)Jour, format « ±ddddddd » (précision maximale)Correspond à QString
INTERVAL DAY(7) TO HOURJour en heure, format « ±ddddddd hh » (précision maximale)Converti en QString
INTERVAL DAY(7) TO MINUTEJour en minute, format « ±ddddddd hh:mm » (précision maximale)Correspond à QString
INTERVAL DAY(7) TO SECOND(9)Du jour à la seconde, format « ±ddddddd hh:mm:ss[.fffffffff] » (précision maximale)Correspond à QString
INTERVAL HOUR(8)Heure, format « ±hhhhhhhh » (précision maximale)Correspond à QString
INTERVAL HOUR(8) TO MINUTEDe l'heure à la minute, format « ±hhhhhhhh:mm » (précision maximale)Converti en QString
INTERVAL HOUR(8) TO SECOND(9)De l'heure à la seconde, format « ±hhhhhhhh:mm:ss[.fffffffff] » (précision maximale)Correspond à QString
INTERVAL MINUTE(10)Minute, format « ±mmmmmmmmmm » (précision maximale)Correspond à QString
INTERVAL MINUTE(10) TO SECOND(9)De la minute à la seconde, format « ±mmmmmmmmmm:ss[.fffffffff] » (précision maximale)Converti en QString
INTERVAL SECOND(12,9)Seconde, format « ±ssssssssssss[.fffffffff] » (précision maximale)Correspond à 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.