This table shows the recommended data types for extracting data from the databases supported in Qt. Note that types used in Qt are not necessarily valid as input types to a specific database system. e.g., A double might work perfectly as input for floating point records in a particular database, but not necessarily as a storage format for output from that database, because it would be stored with 64-bit precision in C++.
IBM DB2 data type
|
SQL type description
|
Recommended input (C++ or Qt data type)
|
SMALLINT
|
16-bit signed integer
|
typedef qint16
|
INTEGER
|
32-bit signed integer
|
typedef qint32
|
BIGINT
|
64-bit signed integer
|
typedef qint64
|
REAL
|
32-bit Single-precision floating point
|
typedef qreal
|
DOUBLE PRECISION
|
64-bit Double-precision floating point
|
Mapped to
QString
for high precision doubles, otherwise qreal
|
FLOAT
|
64-bit Double-precision floating point
|
typedef qreal
|
CHAR
|
Fixed-length, null-terminated character string
|
Mapped to
QString
|
VARCHAR
|
Null-terminated varying length string
|
Mapped to
QString
|
LONG VARCHAR
|
Not null-terminated varying length character string
|
Mapped to
QString
|
BLOB
|
Not null-terminated varying binary string with 4-byte string length indicator
|
Mapped to
QByteArray
|
CLOB
|
Character large string object
|
Mapped to
QString
|
DATE
|
Null-terminated character string of the following format: yyyy-mm-dd
|
Mapped to
QDate
|
TIME
|
Null-terminated character string of the following format: hh.mm.ss
|
Mapped to
QTime
|
TIMESTAMP
|
Null-terminated character string of the following format: yyyy-mm-dd-hh.mm.ss.nnnnnn
|
Mapped to
QDateTime
|
Oracle Call Interface data type
|
SQL type description
|
Recommended input (C++ or Qt data type)
|
NUMBER
|
FLOAT, DOUBLE, PRECISIONc REAL
|
Mapped to
QString
for high precision doubles, otherwise qreal
|
NUMBER(38)
|
INTEGER INT SMALLINT
|
typedef qint8/16/32/64
|
NUMBER(p,s)
|
NUMERIC(p,s) DECIMAL(p,s)a
|
By default mapping to
QString
|
NVARCHAR2(n)
|
Character string (NATIONAL CHARACTER VARYING(n) NATIONAL CHAR VARYING(n) NCHAR VARYING(n))
|
Mapped to
QString
|
NCHAR(n)
|
Character string (NATIONAL CHARACTER(n) NATIONAL CHAR(n) NCHAR(n))
|
Mapped to
QString
|
CHAR(n)
|
Character string (CHARACTER(n) CHAR(n))
|
Mapped to
QString
|
CLOB
|
Character large string object
|
Mapped to
QString
|
BLOB
|
A binary large object
|
Mapped to
QByteArray
|
TIMESTAMP
|
Year, month, and day values of date, as well as hour, minute, and second values of time
|
Mapped to
QDateTime
|
PostgreSQL data type
|
SQL type description
|
Recommended input (C++ or Qt data type)
|
BOOLEAN
|
布尔
|
bool
|
SMALLINT
|
16-bit signed integer
|
typedef qint16
|
INTEGER
|
32-bit signed integer
|
typedef qint32
|
BIGINT
|
64-bit signed integer
|
typedef qint64
|
REAL
|
32-bit variable-precision floating point
|
typedef qreal
|
DOUBLE PRECISION
|
64-bit variable-precision floating point
|
Mapped to
QString
for high precision doubles, otherwise qreal
|
DECIMAL VARIABLE
|
user-specified precision, exact
|
typedef qreal
|
NUMERIC VARIABLE
|
user-specified precision, exact
|
typedef qreal
|
VARCHAR
|
variable-length character string
|
Mapped to
QString
|
CHARACTER
|
Character string of fixed-length
|
Mapped to
QString
|
TEXT
|
Character string of variable-length
|
Mapped to
QString
|
CLOB
|
Character large string object
|
Mapped to
QString
|
TIMESTAMP
|
8 bytes, both date and time
|
Mapped to
QDateTime
|
TIMESTAMP
|
8 bytes, both date and time, with time zone
|
Mapped to
QDateTime
|
DATE
|
4 bytes, dates only
|
Mapped to
QDate
|
TIME
|
8 bytes, times of day only 00:00:00.00 - 23:59:59.99
|
Mapped to
QTime
|
TIME
|
12 bytes times of day only, with time zone 00:00:00.00+12
|
Mapped to
QDateTime
|
Sybase Adaptive Server data type
|
SQL type description
|
Recommended input (C++ or Qt data type)
|
BINARY
|
Describes a fixed-length binary value up to 255 bytes in size.
|
Mapped to
QByteArray
|
CHAR
|
Character String
|
Mapped to
QString
|
DATETIME
|
Date and time. Range: 1753-01-01 00:00:00 through 9999-12-31 23:59:59.
|
Mapped to
QDateTime
|
NCHAR
|
Character String of fixed length
|
Mapped to
QString
|
NVARACHAR
|
Character String of variable length
|
Mapped to
QString
|
VARCHAR
|
Character String of fixed length
|
Mapped to
QString
|
CLOB
|
Character large string object
|
Mapped to
QString
|
TIMESTAMP
|
A unique number within a database
|
Mapped to
QString
|
SMALLDATETIME
|
Date and time. Range: 1900-01-01 00:00 through 2079-12-31 23:59
|
Mapped to
QDateTime
|
UNICHAR
|
Character String of fixed length.(Unicode)
|
Mapped to
QString
|
UNIVARCHAR
|
Character String of variable length.(Unicode)
|
Mapped to
QString
|
VARBINARY
|
Describes a variable-length binary value up to 255 bytes in size
|
Mapped to
QByteArray
|