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

MySQL поддерживает большое количество стандартных типов данных SQL в различных категориях. Он использует много разных типов данных, разбитых на три категории: числовые, дата и время и типы строк.

Числовые типы данных в MySQL

Синтаксис типа данных Описание
INT Целое число нормального размера, которое может быть знаковым или беззнаковым. Если знаковое, допустимый диапазон от -2 147 483 648 до 2 147 483 647. Если беззнаковое, допустимый диапазон от 0 до 4 294 967 295. Можно указать ширину до 11 цифр.
TINYINT Очень маленькое целое число, которое может быть знаковым или беззнаковым. Если знаковое, допустимый диапазон от -128 до 127. Если беззнаковое, допустимый диапазон от 0 до 255. Можно указать ширину до 4 цифр.
SMALLINT Маленькое целое число, которое может быть знаковым или беззнаковым. Если знаковое, допустимый диапазон от -32 768 до 32 767. Если беззнаковое, допустимый диапазон от 0 до 65 535. Можно указать ширину до 5 цифр.
MEDIUMINT Среднее целое число, которое может быть знаковым или беззнаковым. Если знаковое, допустимый диапазон от -8 388 608 до 8 388 607. Если беззнаковое, допустимый диапазон от 0 до 16 777 215. Можно указать ширину до 9 цифр.
BIGINT Большое целое число, которое может быть знаковым или беззнаковым. Если знаковое, допустимый диапазон от -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807. Если беззнаковое, допустимый диапазон от 0 до 18 446 744 073 709 551 615. Можно указать ширину до 20 цифр.
FLOAT(m,d) Число с плавающей запятой, которое не может быть беззнаковым. Можно определить длину отображения (m) и количество десятичных знаков (d). Это необязательно, по умолчанию — 10,2 (2 десятичных знака, общее количество цифр 10). Десятичная точность может достигать 24 знаков.
DOUBLE(m,d) Число с плавающей запятой двойной точности, которое не может быть беззнаковым. Можно определить длину отображения (m) и количество десятичных знаков (d). Это необязательно, по умолчанию — 16,4 (4 десятичных знака). Десятичная точность может достигать 53 знаков. REAL — синоним DOUBLE.
DECIMAL(m,d) Распакованный десятичный тип, не может быть беззнаковым. В распакованном виде каждое десятичное число занимает один байт. Требуется указать длину (m) и количество десятичных знаков (d). NUMERIC — синоним DECIMAL.

Дата и время

Синтаксис типа данных Максимальный размер Описание
DATE Значения варьируются от «1000-01-01» до «9999-12-31». Отображается как «yyyy-mm-dd».
DATETIME Значения варьируются от «1000-01-01 00:00:00» до «9999-12-31 23:59:59». Отображается как «yyyy-mm-dd hh:mm:ss».
TIMESTAMP(m) Значения варьируются от ‘1970-01-01 00:00:01’ UTC до ‘2038-01-19 03:14:07’ TC. Отображается как «ГГГГ-ММ-ДД ЧЧ: ММ: СС».
TIME Значения варьируются от ‘1-838: 59: 59’ до ‘838: 59: 59’. Отображается как «ЧЧ: ММ: СС».
YEAR[(2|4)] Значение года как 2 цифры или 4 цифры. Значение по умолчанию — 4 цифры.

Строковые типы данных

Синтаксис типа данных
Максимальный размер
Описание
CHAR(size)
255 символов
Строки с фиксированной длиной. Пространство дополняется справа на символы одинакового размера.
VARCHAR(размер)
255 символов
Строка переменной длины.
TINYTEXT (размер)
255 символов
Размер — количество сохраняемых символов.
TEXT (размер)
65 535 символов
Размер — количество сохраняемых символов.
MEDIUMTEXT (размер)
16 777 215 символов
Размер — количество сохраняемых символов.
LONGTEXT (размер)
4 ГБ или 4 294 967 295 символов
Где размер — количество сохраняемых символов.
BINARY (размер)
255 символов
Строки с фиксированной длиной. Пространство дополняется справа на символы одинакового размера. (введено в MySQL 4.1.2)
VARBINARY (размер)
255 символов
Строка переменной длины. (введено в MySQL 4.1.2)

Типы данных для больших объемов информации

Синтаксис типа данных Максимальный размер
TINYBLOB 255 байт
BLOB 65 535 байт
MEDIUMBLOB 16 777 215 байт
LONGTEXT 4Гб или 4 294 967 295 символов