両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン |
database:datatype [2009/08/18 15:25] – ともやん | database:datatype [2020/03/30 10:08] (現在) – ともやん |
---|
====== 各種データベースのデータ型比較 ====== | <html> |
===== Access / SQL Server 比較 ===== | <style> |
^ Access ^^^^ SQL Server ^^^ | #result pre, #mincode pre { |
^ データ型 ^^ サイズ ^ 範囲/説明 ^ データ型 ^ サイズ ^ 範囲/説明 ^ | /*height: 300px;*/ |
|Yes/No 型 ||1 Bit |Yes/No、True/False、On/Off など |BIT |1 Byte |0, 1, NULL | | overflow: scroll; |
|数値型 |バイト型 |1 Byte | |TINYINT |1 Byte |0 ~ 255 | | overflow-x: hidden; |
| |整数型 |2 Byte | |SMALLINT |2 Byte |-2%%^%%15 (-32,768) ~ 2%%^%%15-1 (32,767) | | font-size: 10px; |
| |長整数型 |4 Byte | |INT |4 Byte |-2%%^%%31 (-2,147,483,648) ~ 2%%^%%31-1 (2,147,483,647) | | } |
|(対応型なし) || | |BIGINT |8 Byte |-2%%^%%63 (-9,223,372,036,854,775,808) ~\\ 2%%^%%63-1 (9,223,372,036,854,775,807) | | #mintbl table { |
| |単精度浮動小数点型 |4 Byte | |REAL |4 Byte |- 3.40E+38 ~ -1.18E-38、0、および\\ 1.18E-38 ~ 3.40E+38 | | font-size: 12px; |
| |倍精度浮動小数点型 |8 Byte | |FLOAT(n) |4 Byte(n = 1~24 有効桁 7)\\ 8 Byte(n = 25~53 有効桁 15) |- 1.79E+308 ~ -2.23E-308、0、および\\ 2.23E-308 ~ 1.79E+308 | | } |
| |レプリケーションID型(GUID) |128 Bit\\ (16Byte) | |UNIQUEIDENTIFIER |16 Byte |GUID\\ 例: 6F9619FF-8B86-D011-B42D-00C04FC964FF | | .dokuwiki .plugin_wrap table { |
| |十進型 |17 Byte |-10%%^%%28-1 ~ 10%%^%%28-1 の値を格納\\ 精度: 1 ~ 28、桁: 0 ~ 精度の数値\\ 既定[精度: 18、桁 0] |DECIMAL(p[, s] ) |5 Byte(p = 1~9)\\ 9 Byte(p = 10~19)\\ 13 Byte(p = 20~28)\\ 17 Byte(p = 29~38) |最大有効桁数で - 10%%^%%38 +1 ~ 10%%^%%38 - 1\\ p(precision): 1~38、s(scale): 0 <= s <= p | | width: auto; |
| | | | |NUMERIC(p[, s] ) | 〃 | 〃 | | } |
|通貨型 ||8 Byte |通貨に使用\\ 整数部 15桁、小数部 4桁の固定小数点型\\ 計算結果が丸められることがない |SMALLMONEY |4 Byte |- 214,748.3648 ~ 214,748.3647 | | </style> |
| || | |MONEY |8 Byte |-922,337,203,685,477.5808 ~\\ 922,337,203,685,477.5807 | | </html> |
|日付/時刻型 ||8 Byte |日付と時刻 |SMALLDATETIME |4(2+2) Byte |1990 年 1 月 1 日~ 2079 年 6 月 6 日、精度: 1 分 | | ====== データ型 ====== |
| || | |DATETIME |8(4+4) Byte |1753 年 1 月 1 日~ 9999 年 12 月 31 日、精度: 3.33 ミリ秒 | | |
|オートナンバー型 ||4 Byte |レコード追加により、インクリメント値または乱数が自動的挿入される |INT(IDENTITY プロパティ定義) | - | - | | |
|テキスト型(n) ||2 Byte/1桁 |最大 255 文字 |VARCHAR(n %%|%% **max**) |入力データ + 2 Byte |n: 1 ~ 8,000、**max**: 2%%^%%31-1 (2,147,483,647) Byte | | |
| || | |NVARCHAR(n %%|%% **max**) |入力文字数 x 2 + 2 Byte |n: 1 ~ 4,000、**max**: 2%%^%%31-1 (2,147,483,647) Byte | | |
|メモ型 ||2 Byte/1桁 |長い文字列または数字\\ Access 97、2000、2002 では最大 64,000 文字\\ Access 2003 では最大 65,536文字 |TEXT |入力データ Byte |2%%^%%31-1 (2,147,483,647) 文字以内の可変長の非 Unicode データ | | |
|ハイパーリンク型 ||2 Byte/1桁 |UNC パスまたは URL パス\\ 最大 64,000 文字 |CHAR, NCHAR, VARCHAR, NVARCHAR\\ (Hyperlink プロパティ設定) | - | - | | |
|OLEオブジェクト型 ||可変 |最大 1 GB\\ Word、Excel、ピクチャ、サウンド、その他のバイナリ データなど Access のテーブルにリンクまたは埋め込み可能なオブジェクト |IMAGE |入力データ Byte |0 ~ 2%%^%%31-1 (2,147,483,647) バイト以内の可変長のバイナリ データ | | |
|(対応型なし) || | |BINARY(n) |n Byte |n: 1 ~ 8,000、固定長のバイナリ データ | | |
|(対応型なし) || | |VARBINARY(n %%|%% **max**) |n + 2 Byte |n: 1 ~ 8,000、可変長のバイナリ データ | | |
|(対応型なし) || | |TIMESTAMP |8 Byte |一意の 2 進数を公開するデータ型 | | |
|(対応型なし) || | |CHAR(n) |n Byte |n: 1 ~ 8,000 | | |
|(対応型なし) || | |NCHAR |n x 2 Byte |n: 1 ~ 4,000 | | |
|(対応型なし) || | |NTEXT |入力文字数 x 2 Byte |2%%^%%30 - 1 (1,073,741,823) 文字以内の可変長の Unicode データ | | |
| |
参考文献:\\ | ====== SQLite データ型 ====== |
[[http://support.microsoft.com/kb/824263/ja|Access データベースで使用できるデータ型やフィールド プロパティに関する情報 - KB824263]]\\ | <WRAP prewrap 100% #mintbl> |
| ^ SQLite3 ^^^ |
| ^ データ型 ^ サイズ ^ 範囲/説明 ^ |
| |NULL | | NULL値 | |
| |INTEGER | 1, 2, 3, 4, 6, 8 Byte | 符号付き整数 | |
| |REAL | 8 Byte | 浮動小数点、IEEE浮動小数点 | |
| |TEXT | 可変長 | テキスト文字列 (UTF-8, UTF-16BE, UTF-16LE) で格納 | |
| |BLOB | 可変長 | blob, 入力されたとおりに格納 | |
| ^ SQLite2 ^^^ |
| | NUMERIC | |
| | TEXT (BLOB, CHAR, CLOB, TEXT) | |
| </WRAP> |
| |
===== Microsoft Jet Database Engine / Access 比較 ===== | ===== 型親和性 (Type Affinity) ===== |
^ Microsoft Jet Database Engine ^^ Access ^^ SQL Server ^ | <WRAP prewrap 100% #mintbl> |
^ データ型 ^ サイズ ^ データ型 ^^ データ型 ^ | <WRAP group> |
|BINARY |1 Byte/1桁 |(対応型なし) ||BINARY、VARBINARY | | <WRAP half column> |
|BIT |1 Byte |Yes/No 型 ||BIT | | ^ データ型 ^ 親和性型 ^ |
|TINYINT |1 Byte |数値型 |バイト型 |TINYINT | | |INT |INTEGER | |
|SMALLINT |2 Byte | |整数型 |SMALLINT | | |INTEGER |::: | |
|INTEGER |4 Byte | |長整数型 |INT | | |TINYINT |::: | |
|REAL |4 Byte | |単精度浮動小数点型 |REAL | | |SMALLINT |::: | |
|FLOAT |8 Byte | |倍精度浮動小数点型 |FLOAT | | |MEDIUMINT |::: | |
|UNIQUEIDENTIFIER |128 Bit\\ (16Byte) | |レプリケーションID型(GUID) |UNIQUEIDENTIFIER | | |BIGINT |::: | |
|DECIMAL |17 Byte | |十進型 |DECIMAL | | |UNSIGNED BIG INT |::: | |
|MONEY |8 Byte |通貨型 ||MONEY | | |INT2 |::: | |
|DATETIME |8 Byte |日付/時刻型 ||DATETIME | | |INT8 |::: | |
|CHAR |2 Byte/1桁 |テキスト型(n) ||CHAR、VARCHAR、NCHAR、NVARCHAR | | </WRAP> |
|TEXT |2 Byte/1桁 |メモ型 ||TEXT | | |
| | |ハイパーリンク型 ||CHAR、VARCHAR、NCHAR、NVARCHAR | | |
|IMAGE |可変 |OLEオブジェクト型 ||IMAGE | | |
| |
参考文献:\\ | <WRAP half column> |
[[http://office.microsoft.com/ja-jp/access/HP010322481041.aspx|SQL データ型 - Access - Microsoft Office Online]]\\ | ^ データ型 ^ 親和性型 ^ |
[[http://office.microsoft.com/ja-jp/access/HP052745731041.aspx|Access データベースと Access プロジェクトのデータ型の違いについて - Access - Microsoft Office Online]]\\ | |CHARACTER(20) |TEXT | |
| |VARCHAR(255) |::: | |
| |VARYING CHARACTER(255) |::: | |
| |NCHAR(55) |::: | |
| |NATIVE CHARACTER(70) |::: | |
| |NVARCHAR(100) |::: | |
| |TEXT |::: | |
| |CLOB |::: | |
| </WRAP> |
| |
| </WRAP> |
| |
| <WRAP group> |
| <WRAP half column> |
| ^ データ型 ^ 親和性型 ^ |
| |BLOB |BLOB | |
| |データ型未指定 |::: | |
| |REAL |REAL | |
| |DOUBLE |::: | |
| |DOUBLE PRECISION |::: | |
| |FLOAT |::: | |
| </WRAP> |
| |
| <WRAP half column> |
| ^ データ型 ^ 親和性型 ^ |
| |NUMERIC |NUMERIC | |
| |DECIMAL(10,5) |::: | |
| |BOOLEAN |::: | |
| |DATE |::: | |
| |DATETIME |::: | |
| </WRAP> |
| </WRAP> |
| |
| </WRAP> |
| |
| [[https://www.sqlite.org/datatype3.html|Datatypes In SQLite Version 3]]\\ |
| [[https://www.sqlite.org/datatypes.html|Datatypes In SQLite Version 2]]\\ |
| [[https://www.sqlite.org/datatype3.html#affinity_name_examples|Datatypes In SQLite Version 3 - Affinity Name Examples]]\\ |
| [[https://stackoverrun.com/ja/q/11259568|I can't understand SQLite - Stack Overrun]]\\ |
| |
| ====== SQL Server データ型 ====== |
| <WRAP prewrap 100% #mintbl> |
| ^ SQL Server ^^^ |
| ^ データ型 ^ サイズ ^ 範囲/説明 ^ |
| |BIT |1 Byte |0, 1, NULL | |
| |TINYINT |1 Byte |0 ~ 255 | |
| |SMALLINT |2 Byte |-2%%^%%15 (-32,768) ~ 2%%^%%15-1 (32,767) | |
| |INT |4 Byte |-2%%^%%31 (-2,147,483,648) ~ 2%%^%%31-1 (2,147,483,647) | |
| |BIGINT |8 Byte |-2%%^%%63 (-9,223,372,036,854,775,808) ~\\ 2%%^%%63-1 (9,223,372,036,854,775,807) | |
| |REAL |4 Byte |- 3.40E+38 ~ -1.18E-38、0、および\\ 1.18E-38 ~ 3.40E+38 | |
| |FLOAT(n) |4 Byte(n = 1~24 有効桁 7)\\ 8 Byte(n = 25~53 有効桁 15) |- 1.79E+308 ~ -2.23E-308、0、および\\ 2.23E-308 ~ 1.79E+308 | |
| |UNIQUEIDENTIFIER |16 Byte |GUID\\ 例: 6F9619FF-8B86-D011-B42D-00C04FC964FF | |
| |DECIMAL(p[, s] ) |5 Byte(p = 1~9)\\ 9 Byte(p = 10~19)\\ 13 Byte(p = 20~28)\\ 17 Byte(p = 29~38) |最大有効桁数で - 10%%^%%38 +1 ~ 10%%^%%38 - 1\\ p(precision): 1~38、s(scale): 0 <= s <= p | |
| |NUMERIC(p[, s] ) | 〃 | 〃 | |
| |SMALLMONEY |4 Byte |- 214,748.3648 ~ 214,748.3647 | |
| |MONEY |8 Byte |-922,337,203,685,477.5808 ~\\ 922,337,203,685,477.5807 | |
| |SMALLDATETIME |4(2+2) Byte |1990 年 1 月 1 日~ 2079 年 6 月 6 日、精度: 1 分 | |
| |DATETIME |8(4+4) Byte |1753 年 1 月 1 日~ 9999 年 12 月 31 日、精度: 3.33 ミリ秒 | |
| |VARCHAR(n %%|%% **max**) |入力データ + 2 Byte |n: 1 ~ 8,000、**max**: 2%%^%%31-1 (2,147,483,647) Byte | |
| |NVARCHAR(n %%|%% **max**) |入力文字数 x 2 + 2 Byte |n: 1 ~ 4,000、**max**: 2%%^%%31-1 (2,147,483,647) Byte | |
| |TEXT |入力データ Byte |2%%^%%31-1 (2,147,483,647) 文字以内の可変長の非 Unicode データ | |
| |IMAGE |入力データ Byte |0 ~ 2%%^%%31-1 (2,147,483,647) バイト以内の可変長のバイナリ データ | |
| |BINARY(n) |n Byte |n: 1 ~ 8,000、固定長のバイナリ データ | |
| |VARBINARY(n %%|%% **max**) |n + 2 Byte |n: 1 ~ 8,000、可変長のバイナリ データ | |
| |TIMESTAMP |8 Byte |一意の 2 進数を公開するデータ型 | |
| |CHAR(n) |n Byte |n: 1 ~ 8,000 | |
| |NCHAR |n x 2 Byte |n: 1 ~ 4,000 | |
| |NTEXT |入力文字数 x 2 Byte |2%%^%%30 - 1 (1,073,741,823) 文字以内の可変長の Unicode データ | |
| </WRAP> |
| |
===== Oracle ===== | |
VARCHAR2 | |