Требования к объему памяти для столбцов каждого типа, поддерживаемого MySQL, перечислены ниже по категориям.
Требования к памяти для числовых типов приведены в таблице 4.7.
Тип столбца |
Требуемая память |
TINYINT |
1 байт |
SMALLINT |
2 байта |
MEDIUMINT |
3 байта |
INT |
4 байта |
INTEGER |
4 байта |
BIGINT |
8 байтов |
FLOAT(X) |
4, если X <= 24 или 8, если 25 <= X <= 53 |
FLOAT |
4 байта |
DOUBLE |
8 байтов |
DOUBLE PRECISION |
8 байтов |
REAL |
8 байтов |
DECIMAL(M,D) |
M+2 байт, если D > 0, M+1 байт, если D = 0 (D+2, если M < D) |
NUMERIC(M,D) |
M+2 байт, если D > 0, M+1 байт, если D = 0 (D+2, если M < D) |
Требования к памяти для типов даты и времени приведены в таблице 4.8.
Тип столбца |
Требуемая память |
DATE |
3 байта |
DATETIME |
8 байтов |
TIMESTAMP |
4 байта |
TIME |
3 байта |
YEAR |
1 байт |
Требования к памяти для символьных типов приведены в таблице 4.9.
Тип столбца |
Требуемая память |
CHAR(M) |
M байт, 1 <= M <= 255 |
VARCHAR(M) |
L+1 байт, где L <= M и 1 <= M <= 255 |
TINYBLOB, TINYTEXT |
L+1 байт, где L < 2^8 |
BLOB, TEXT |
L+2 байт, где L < 2^16 |
MEDIUMBLOB, MEDIUMTEXT |
L+3 байт, где L < 2^24 |
LONGBLOB, LONGTEXT |
L+4 байт, где L < 2^32 |
ENUM('value1','value2',...) |
1 или 2 байт, в зависимости от количества перечисляемых величин (максимум 65535) |
SET('value1','value2',...) |
1, 2, 3, 4 или 8 байт, в зависимости от количества элементов множества (максимум 64) |