Информационный сайт




Типы данных MySql

Для того, чтобы понять как располагаются данные в MySql необходимо изучить типы данных в MySql, другими словами необходимо понять какие данные могут располагаться в таблицах.

Типы данных в MySql можно разделить на 3 категории:

  • Числовые
  • Дата и время
  • Строковые или символьные

Числовые типы

Имя и псевдоним Размер записи в байтах Использование
TINYINT(M); BIT, BOOL, BOOLEAN - синонимы для TINYINT(1) 1 Если не описано, то значения переменных от 0 до 255; В остальных случаях от -128 до 127.
SMALLINT(M) 2 Если не описано, то значения переменных от 0 до 65535; В остальных случаях от -32768 до 32767.
MEDIUMINT(M) 3 Если не описано, то значения переменных от 0 до 16777215; В остальных случаях от -8388608 до 8388607.
INT(M); INTEGER(M) 4 Если не описано, то значения переменных от 0 до 4294967295; В остальных случаях от -8388608 до 8388607.
BIGINT(M) 8 Если не описано, то значения переменных от 0 до 18446744073709551615;В остальных случаях от -9223372036854775808 до9223372036854775807.
Вы можете поэкспериментировать особенности когда будете выполнять арифметические действия с не описанными integer - числами этого размера
FLOAT(точность) 4 или 8 Когда точность - целое число, то до 53. Если точность <=24, преобразовывается во FLOAT; Если точность >24 и <=53, преобразовывается в DOUBLE. Предусмотрена совместимость с ODBC. Вообщем используйте нормальные типы MySQL FLOAT и DOUBLE.
FLOAT(M,D) 4 Одиночная точность числа с плавающей точкой.
DOUBLE(M,D); DOUBLE PRECISION, REAL 8 Двойная точность числа с плавающей точкой
DECIMAL(M,D); DEC, NUMERIC, FIXED M+1 или M+2 Некоторое распакованное число с плавающей точкой, которое записано как CHAR. Используется для маленьких десятичных числе, таких как деньги

Дата и время

Имя и псевдоним Размер записи в байтах Использование
DATE 3 Отображается в формате YYYY-MM-DD(год-месяц-число)
DATETIME (HH:MM:SS)(ЧАСЫ:МИНУТЫ:СЕКУНДЫ) 8 Отображается в формате YYYY-MM-DD(год-месяц-число)
TIMESTAMP 4 Начиная с версии MySQL 4.1, больше нет возможности устанавливать размер отображения. Отображается в таком же формате как DATETIME
TIME 3 Отображается в формате HHH:MM:SS(ЧАС:МИНУТЫ:СЕКУНДЫ) где HHH(ЧАСЫ) - это переменная от -838 до 838. Это позволяет типу TIME предоставлять затраченное время между двумя событиями.
YEAR 1 Отображается в формате YYYY(ГОД), который принимает значения переменных от 1901 до 2155. Для использования ранних дат вы можете использовать тип TINYINT

Строковые или символьные

Имя и псевдоним Размер записи Использование
CHAR(M) M байт Фиксированные по длине. Если вы используете не достаточно длинные строки, то они будут дополняться пробелами в конце. М должно быть <=255
VARCHAR(M) до M байт Изменяемые в длине. М должно быть <=255
BINARY(M) M байт Также, как и CHAR за исключением, что это двойные последовательности, они содержат последовательности байтов, а не символов. Отсутствует кодировка, сортировка и сравнение выполняются на основе числовых переменных из байтов в переменных
VARBINARY(M) М байт Также, как и VARCHAR за исключением, что это двойные последовательности, они содержат последовательности байтов, а не символов. Отсутствует кодировка, сортировка и сравнение выполняются на основе числовых переменных из байтов в переменных
TINYBLOB или TINYTEXT до 255 байт TINYBLOB с учётом регистра для сортировки и сравнения; TINYTEXT без учёта регистра.
BLOB или TEXT до 64Кбайт BLOB с учётом регистра для сортировки и сравнения. TEXT без учёта регистра.
MEDIUMBLOB или MEDIUMTEXT до 16Мбайт MEDIUMBLOB с учётом регистра для сортировки и сравнения; MEDIUMTEXT без учёта регистра.
LONGBLOB или LONGTEXT до 4 Гбайт LONGMBLOB с учётом регистра для сортировки и сравнения; LONGMTEXT без учёта регистра
ENUM(переменная_1...переменная_N) 1 или 2 байта До 65535 отличных переменных
SET(переменная_1...переменная_N) До 8 байт До 64 отличных переменных

Автор: Tatjana Rodionovskaja






Яндекс.Метрика