Qt支持数据库系统的数据类型

此表显示了从Qt支持的数据库中提取数据时推荐的数据类型。请注意,在Qt中使用的类型不一定可以作为特定数据库系统的输入类型。例如,double类型可能非常适合作为特定数据库中浮点记录的输入,但未必适合作为该数据库输出的存储格式,因为它将以64位精度存储在C++中。

IBM DB2数据类型

IBM DB2数据类型SQL类型说明推荐输入(C++或Qt数据类型)
SMALLINT16位有符号整数typedef qint16
INTEGER32位有符号整数typedef qint32
BIGINT64位有符号整数typedef qint64
REAL32位单精度浮点数typedef qreal
DOUBLE PRECISION64位双精度浮点数高精度双精度浮点数映射为QString,否则为qreal
FLOAT64位双精度浮点数typedef qreal
CHAR固定长度的空终止字符字符串映射为QString
VARCHAR空终止的可变长度字符串映射为QString
LONG VARCHAR非空终止的可变长度字符字符串映射为QString
BLOB非空终止的可变长度二进制字符串,包含4字节字符串长度指示符映射为QByteArray
CLOB字符大字符串对象映射为QString
DATE以下格式的空终止字符字符串:yyyy-mm-dd映射为QDate
TIME以下格式的空终止字符字符串:hh.mm.ss映射为QTime
TIMESTAMP以下格式的空终止字符字符串:yyyy-mm-dd-hh.mm.ss.nnnnnn映射为QDateTime

Borland InterBase数据类型

Borland InterBase数据类型SQL类型说明推荐输入(C++或Qt数据类型)
BOOLEAN布尔型bool
TINYINT8位有符号整数typedef qint8
SMALLINT16位有符号整数typedef qint16
INTEGER32位有符号整数typedef qint32
BIGINT LONG64位有符号整数typedef qint64
REAL FLOAT32位浮点数typedef qreal
FLOAT64位浮点数typedef qreal
DOUBLE64位浮点数typedef qreal
DOUBLE PRECISION64位双精度浮点数高精度双精度浮点数映射为QString,否则为qreal
VARCHAR STRING字符字符串,Unicode映射为QString
CLOB字符大字符串对象映射为QString
DATE显示日期。格式:'yyyy-mm-dd'映射为QDate
TIME显示时间。格式为24小时制的'hh:mm:ss'映射为QTime
TIMESTAMP显示时间戳。格式为'yyyy-mm-dd hh:mm:ss'映射为QDateTime

MySQL数据类型

MySQL数据类型SQL类型说明推荐输入(C++或Qt数据类型)
TINYINT8位有符号整数typedef qint8
TINYINT UNSIGNED8位无符号整数typedef quint8
SMALLINT16位有符号整数typedef qint16
SMALLINT UNSIGNED16位无符号整数typedef quint16
整型32位有符号整数typedef qint32
无符号整型32位无符号整数typedef quint32
BIGINT64位有符号整数typedef qint64
FLOAT32位浮点数typedef qreal
DOUBLE64位浮点数高精度双精度浮点数映射为QString,否则为qreal
CHAR字符字符串映射为QString
VARCHAR字符字符串映射为QString
小文本字符字符串映射为QString
文本字符字符串映射为QString
中文本字符字符串映射为QString
长文本字符字符串映射为QString
CLOB字符大字符串对象映射为QString
所有 BLOB 类型BLOB映射为QByteArray
DATE日期(无时间)映射为QDate
日期时间日期和时间映射为QDateTime
TIMESTAMP日期和时间映射为QDateTime
TIME时间映射为QTime
年份(整型)映射为QDateTime
枚举值集合的枚举映射为QString

Oracle 调用接口数据类型

Oracle 调用接口数据类型SQL类型说明推荐输入(C++或Qt数据类型)
数字FLOAT, DOUBLE, PRECISION、REAL高精度双精度浮点数映射为QString,否则为qreal
NUMBER(38)整数 INT 小整型typedef qint8/16/32/64
NUMBER(p,s)NUMERIC(p,s) DECIMAL(p,s)a映射为QString
NVARCHAR2(n)字符字符串(NATIONAL CHARACTER VARYING(n) NATIONAL CHAR VARYING(n) NCHAR VARYING(n))映射为QString
NCHAR(n)字符字符串(NATIONAL CHARACTER(n) NATIONAL CHAR(n) NCHAR(n))映射为QString
CHAR(n)字符字符串(CHARACTER(n) CHAR(n))映射为QString
CLOB字符大字符串对象映射为QString
BLOB二进制大对象映射为QByteArray
TIMESTAMP日期的年、月、日值以及时间的时、分、秒值映射为QDateTime

ODBC 数据类型

ODBC 数据类型SQL类型说明推荐输入(C++或Qt数据类型)
布尔型布尔
TINYINT8位数整型typedef qint8
SMALLINT16位有符号整数typedef qint16
INTEGER32位有符号整数typedef qint32
BIGINT64位有符号整数typedef qint64
REAL32位单精度浮点数typedef qreal
FLOAT64位双精度浮点数typedef qreal
DOUBLE64位双精度浮点数高精度双精度浮点数映射为QString,否则为qreal
CHAR字符字符串映射为QString
VARCHAR字符字符串映射为QString
LONGVARCHAR字符字符串映射为QString
CLOB字符大字符串对象映射为QString
DATE字符字符串映射为QDate
TIME字符时间,字符字符串映射为QTime
TIMESTAMP字符时间,字符字符串映射为QDateTime

PostgreSQL 数据类型

PostgreSQL 数据类型SQL类型说明推荐输入(C++或Qt数据类型)
BOOLEAN布尔型bool
SMALLINT16位有符号整数typedef qint16
INTEGER32位有符号整数typedef qint32
BIGINT64位有符号整数typedef qint64
REAL32位变精度浮点数typedef qreal
DOUBLE PRECISION64位变精度浮点数高精度双精度浮点数映射为QString,否则为qreal
DECIMAL 变量用户指定精度,精确型typedef qreal
NUMERIC 变量用户指定精度,精确型typedef qreal
VARCHAR可变长度字符字符串映射为QString
CHARACTER固定长度字符字符串映射为QString
文本可变长度字符字符串映射为QString
CLOB字符大字符串对象映射为QString
TIMESTAMP8个字节,既包含日期又包含时间映射为QDateTime
TIMESTAMP8个字节,既包含日期又包含时间,拥有时区映射为QDateTime
DATE4个字节,仅日期映射为QDate
TIME8个字节,仅一天中的时间,范围从00:00:00.00 - 23:59:59.99映射为QTime
TIME12个字节的天时间,包含时区 00:00:00.00+12映射为QDateTime

QSQLITE SQLite 版本 3 数据类型

QSQLITE SQLite 版本 3 数据类型SQL类型说明推荐输入(C++或Qt数据类型)
NULLNULL 值。NULL
INTEGER有符号整数,根据值的幅度存储在 8、16、24、32、48 或 64 位。typedef qint8/16/32/64
REAL64位浮点数值。typedef qreal
文本字符字符串(UTF-8,UTF-16BE 或 UTF-16-LE)。映射为QString
CLOB字符大字符串对象映射为QString
BLOB值是数据 BLOB,存储方式与输入时相同。映射为QByteArray

Mimer SQL 数据类型

Mimer SQL 类型SQL类型说明推荐输入(C++或Qt数据类型)
SMALLINT16位有符号整数typedef qint16
INTEGER32位有符号整数typedef qint32
INTEGER(n)最大45位精度的整型映射为QString
BIGINT64位有符号整数typedef qint64
REAL32位单精度IEEE浮点数typedef float
DOUBLE PRECISION64位双精度IEEE浮点数高精度双精度浮点数映射为QString,否则为qreal
FLOAT64位双精度IEEE浮点数高精度双精度浮点数映射为QString,否则为qreal
FLOAT(n)最大45位精度的浮点数映射为QString
DECIMAL(p,s)具有最大45位精度和比例的十进制数映射为QString
CHAR固定长度拉丁1字符字符串(CHAR或字符)映射为QString
VARCHAR可变长度拉丁1字符串(VARCHAR或CHARACTER VARYING)映射为QString
NCHAR固定长度Unicode字符串(NCHAR或NATIONAL CHARACTER)映射为QString
NVARCHAR可变长度Unicode字符串(NVARCHAR或NATIONAL CHARACTER VARYING)映射为QString
BINARY固定长度二进制数据映射为QByteArray
VARBINARY可变长度二进制数据(VARBINARY或BINARY VARYING)映射为QByteArray
BLOB二进制大对象(BLOB或BINARY LARGE OBJECT)映射为QByteArray
CLOB拉丁1字符大对象(CLOB或CHARACTER LARGE OBJECT)映射为QString
NCLOBUnicode字符大对象(NCLOB或NATIONAL CHARACTER LARGE OBJECT)映射为QString
DATE由年、月、日组成的日期映射为QDate
TIME由小时、分钟、秒组成的时间,可选的小数秒映射为QTime
TIMESTAMP包含可选小数秒的日期和时间映射为QDateTime
BUILTIN.UUID通用唯一标识符映射到 QUuid
BOOLEAN布尔型bool
INTERVAL YEAR(7)年份,格式 '±yyyyyyy'(最大精度)映射为QString
间隔年(7)到月年到月,格式为'±yyyy-mm'(最大精度)映射为QString
间隔月(7)月,格式为'±mmmmmmm'(最大精度)映射为QString
间隔日(7)日,格式为'±ddddddd'(最大精度)映射为QString
间隔日(7)到小时日到小时,格式为'±ddddddd hh'(最大精度)映射为QString
间隔日(7)到分钟日到分钟,格式为'±ddddddd hh:mm'(最大精度)映射为QString
间隔日(7)到秒(9)日到秒,格式为'±ddddddd hh:mm:ss[.fffffffff]'(最大精度)映射为QString
间隔小时(8)小时,格式为'±hhhhhhhh'(最大精度)映射为QString
间隔小时(8)到分钟小时到分钟,格式为'±hhhhhhhh:mm'(最大精度)映射为QString
间隔小时(8)到秒(9)小时到秒,格式为'±hhhhhhhh:mm:ss[.fffffffff]'(最大精度)映射为QString
间隔分钟(10)分钟,格式为'±mmmmmmmmmm'(最大精度)映射为QString
间隔分钟(10)到秒(9)分钟到秒,格式为'±mmmmmmmmmm:ss[.fffffffff]'(最大精度)映射为QString
间隔秒(12,9)秒,格式为'±ssssssssssss[.fffffffff]'(最大精度)映射为QString

© 2024 Qt 公司有限公司。本文件中包含的文档贡献归其各自的拥有者所有。本文档是根据自由软件基金会发布的GNU 自由文档许可证 1.3 版的条款提供的。Qt 及其相关标志是芬兰及/或世界其他国家 Qt 公司的商标。所有其他商标均属于其各自的业主。