この記事では MySQL で データベースの物理設計を行う際に参照する資料をまとめています。この資料の情報は MySQL 5.6.4 以降に対応しています。
データ型
整数
| Type |
Bytes |
Minimum Value |
Maximum Value |
| TINYINT |
1 |
-128 |
127 |
| TINYINT UNSIGNED |
1 |
0 |
255 |
| SMALLINT |
2 |
-32,768 |
32,767 |
| SMALLINT UNSIGNED |
2 |
0 |
65,535 |
| MEDIUMINT |
3 |
-8,388,608 |
8,388,607 |
| MEDIUMINT UNSIGNED |
3 |
0 |
16,777,215 |
| INT |
4 |
-2,147,483,648 |
2,147,483,647 |
| INT UNSIGNED |
4 |
0 |
4,294,967,295 |
| BIGINT |
8 |
-9,223,372,036,854,775,808 |
9,223,372,036,854,775,807 |
| BIGINT UNSIGNED |
8 |
0 |
18,446,744,073,709,551,615 |
実数
| Type |
Bytes |
Precision |
| FLOAT(p) |
4(0<=p<=24), 8(25<=p<=53) |
0-53 |
| FLOAT |
4 |
0-24 |
| DOUBLE |
8 |
24-53 |
| DECIMAL |
*1 |
|
文字列、バイナリ
| Type |
Max Size (Bytes) |
| CHAR |
255 |
| VARCHAR |
255 |
| BINARY |
255 |
| VARBINARY |
255 |
| TINYTEXT |
255 |
| TEXT |
65,535 |
| MEDIUMTEXT |
16,777,215 |
| LONGTEXT |
4,294,967,295 |
| TINYBLOB |
255 |
| BLOB |
65,535 |
| MEDIUMBLOB |
16,777,215 |
| LONGBLOB |
4,294,967,295 |
日付/時刻
| Type |
Bytes |
データ範囲 |
| DATE |
3 |
‘1000-01-01’ ~ ‘9999-12-31’ |
| DATETIME |
5-8 |
‘1000-01-01 00:00:00’ ~ ‘9999-12-31 23:59:59’ |
| TIMESTAMP |
4-7 |
‘1970-01-01 00:00:00’ ~ 2037 年 |
| TIME |
3-6 |
‘-838:59:59’ ~ ‘838:59:59’ |
| YEAR[ 2 | 4 ] |
1 |
2桁: 1970 ~ 2069 4桁(デフォルト): 1901 ~ 2155、 0000
|
参考