Qtがサポートするデータベースシステムのデータ型

この表は、Qt でサポートされているデータベースからデータを抽出する際に推奨されるデータ型を示したものです。例えば、double は特定のデータベースの浮動小数点レコードの入力としては完璧に動作するかもしれませんが、C++ では 64 ビット精度で保存されるため、そのデータベースからの出力の保存形式としては必ずしも有効ではありません。

IBM DB2 データ型

IBM DB2 データ型SQL 型の説明推奨入力 (C++ または Qt データ型)
SMALLINT16 ビット符号付き整数typedef qint16
INTEGER32 ビット符号付き整数typedef qint32
BIGINT64ビット符号付き整数typedef qint64
REAL32 ビット単精度浮動小数点typedef qreal
倍精度64 ビット倍精度浮動小数点高精度倍精度の場合はQString にマップされる。
FLOAT64 ビット倍精度浮動小数点typedef qreal
CHAR固定長、ヌル終端の文字列にマップされるQString
VARCHARヌル終端の可変長文字列にマップされるQString
LONG VARCHARヌル終端でない可変長文字列にマップされるQString
BLOBヌル終端でない可変長バイナリ文字列(4バイト文字列長インジケータ付きにマップされるQByteArray
CLOB文字ラージ文字列オブジェクトにマップされるQString
日付ヌル終端の文字列で、以下のフォーマット: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ブール型ブール
TINYINT8ビット符号付き整数typedef qint8
SMALLINT16 ビット符号付き整数typedef qint16
INTEGER32 ビット符号付き整数typedef qint32
BIGINT LONG64 ビット符号付き整数typedef qint64
REAL FLOAT32 ビット浮動小数点typedef qreal
FLOAT64 ビット浮動小数点typedef qreal
DOUBLE64 ビット浮動小数点typedef qreal
倍精度64ビット倍精度浮動小数点高精度倍数の場合はQString にマップされる。
VARCHAR 文字列文字列、Unicode以下にマッピングQString
CLOB文字ラージ文字列オブジェクトマッピング先QString
日付日付を表示します。書式は'yyyy-mm-dd'マッピング先QDate
時刻時刻を表示します。フォーマットは24時間制の'hh:mm:ss'マップ先はQTime
タイムスタンプタイムスタンプを表示します。フォーマットは 'yyyy-mm-dd hh:mm:ss' です。マッピング先QDateTime

MySQL データ型

MySQL データ型SQL型の説明推奨入力(C++またはQtデータ型)
TINYINT8ビット符号付き整数typedef qint8
符号なしtinyint8 ビット符号なし整数typedef quint8
SMALLINT16ビット符号付き整数typedef qint16
smallint unsigned16ビット符号なし整数typedef quint16
int32ビット符号付き整数typedef qint32
INT UNSIGNED32 ビット符号なし整数typedef quint32
BIGINT64ビット符号付き整数typedef qint64
FLOAT32ビット浮動小数点typedef qreal
DOUBLE64ビット浮動小数点高精度倍数の場合はQString にマップされる。
CHAR文字列にマップされるQString
VARCHAR文字列にマップされるQString
TINYTEXT文字列にマップされるQString
TEXT文字列にマップされるQString
MEDIUMTEXT文字列にマップされるQString
ロングテキスト文字列マッピング先QString
CLOB文字ラージ文字列オブジェクトマッピング先QString
すべてのBLOBタイプBLOBにマップされるQByteArray
日付時刻なしの日付にマップされるQDate
DATETIME日付と時刻にマップされるQDateTime
タイムスタンプ日付と時刻にマップされるQDateTime
時刻時刻マッピング先QTime
年 (int)にマップされるQDateTime
ENUM値集合の列挙にマップされるQString

Oracle Call Interfaceデータ型

Oracle Call Interface データ型SQL型の説明推奨入力(C++またはQtデータ型)
NUMBERFLOAT、DOUBLE、PRECISIONc REAL高精度倍数の場合はQString にマップされる。
NUMBER(38)整数 int smallinttypedef 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
タイムスタンプ日付の年、月、日の値、時刻の時、分、秒の値マッピング先QDateTime

ODBCデータ型

ODBCデータ型SQLデータ型の説明推奨入力(C++またはQtデータ型)
ビットブール値BOOL
TINYINT8ビット整数typedef qint8
SMALLINT16 ビット符号付き整数typedef qint16
INTEGER32 ビット符号付き整数typedef qint32
BIGINT64ビット符号付き整数typedef qint64
REAL32 ビット単精度浮動小数点typedef qreal
FLOAT64 ビット倍精度浮動小数点。typedef qreal
DOUBLE64 ビット倍精度浮動小数点高精度倍数の場合はQString にマップされる。
CHAR文字列にマップされるQString
VARCHAR文字列にマップされるQString
LONGVARCHAR文字列マッピング先QString
CLOB文字ラージ文字列オブジェクトマッピング先QString
日付文字列にマップされるQDate
TIME文字時間, 文字列にマップされるQTime
TIMESTAMP文字時間、文字列にマップされるQDateTime

PostgreSQLデータ型

PostgreSQLデータ型SQL型の説明推奨入力(C++またはQtデータ型)
BOOLEANブール型ブール
SMALLINT16ビット符号付き整数typedef qint16
INTEGER32ビット符号付き整数typedef qint32
BIGINT64ビット符号付き整数typedef qint64
REAL32 ビット可変精度浮動小数点typedef qreal
倍精度64 ビット可変精度浮動小数点。高精度倍精度の場合はQString にマップされる。
10進変数ユーザ指定の精度,正確typedef qreal
数値変数ユーザ指定の精度,正確typedef qreal
VARCHAR可変長の文字列マッピング先QString
CHARACTER固定長の文字列にマップされる。QString
TEXT可変長の文字列にマップされるQString
CLOB文字ラージ文字列オブジェクトにマップされるQString
タイムスタンプ8バイト、日付と時刻の両方にマップされるQDateTime
タイムスタンプ8バイト、日付と時刻の両方、タイムゾーン付きタイムゾーン付きQDateTime
日付4バイト、日付のみマップ先QDate
時刻8バイト、時刻のみ 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
TEXT文字列(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
倍精度64 ビット倍精度 IEEE 浮動小数点高精度倍精度の場合はQString にマップされる。
浮動小数点64ビット倍精度IEEE浮動小数点高精度倍数の場合はQString 、それ以外の場合はqrealにマップされる。
FLOAT(n)最大45桁精度の浮動小数点にマップされるQString
DECIMAL(p,s)最大45桁の精度とスケールを持つ10進数にマップされます。QString
CHAR固定長の文字Latin-1文字列(CHARまたはcharacter)以下にマッピングQString
VARCHAR可変長のLatin-1文字列(VARCHARまたはCHARACTER VARYING)NCHARにマッピング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
日付年、月、日で構成される日付にマップされるQDate
TIME時、分、秒(オプションで秒の端数あり)からなる時刻マップ先QTime
TIMESTAMP日付と時刻(オプションで秒の端数付きにマップされます。QDateTime
BUILTIN.UUID一意な識別子。にマップされるQUuid
BOOLEANブールブール
区間年(7)年、フォーマット '±yyyyyyy' (最大精度)にマップされるQString
区間年(7)から月年~月、フォーマット '±yyyyy-mm' (最大精度)区間QString
区間 month(7)月、フォーマット「±mmmmm」(最大精度)へのマップQString
間隔 day(7)日、フォーマット '±ddddddd' (最大精度)次の値にマップされるQString
間隔 day(7) から時間日→時、フォーマット '±ddddd hh'(最大精度)へのマッピングQString
間隔 day(7) から分日→分、フォーマット「±dddddd hh:mm」(最大精度)へのマッピングQString
区間day(7)から秒(9)日→秒、フォーマット「±dddddd hh:mm:ss[.ffffffff]」(最大精度)次の値にマップされますQString
時間間隔(8)時、フォーマット '±hhhhhh' (最大精度)にマップされるQString
区間時(8)から分時~分、フォーマット '±hhhhhh:mm' (最大精度)へのマップQString
区間時(8)から秒(9)時間から秒、フォーマット「±hhhhhh:mm:ss[.ffffffff]」(最大精度)以下にマップされますQString
区間分(10)分、フォーマット '±mmmmmmmm'(最大精度)以下にマッピングQString
区間分(10)から秒(9)分~秒、フォーマット「±mmmmmm:ss[.ffffffff]」(最大精度)次の値にマップされますQString
区間秒(12,9)秒、フォーマット '±ssssssssss[.fffffff]' (最大精度)にマップされます。QString

©2024 The Qt Company Ltd. 本書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。