Строковые типы данных Тип данных
| Объем памяти
| Максимальный размер
| Описание
| CHAR (M)
| M символов
| М символов
| Позволяет хранить строку фиксированной длины М. Значение М - от 0 до 65535.
Примеры:
CHAR (8) - хранит строки из 8 символов и занимает 8 байтов. Например, любое из следующих значений: '', 'Иван','Ирина', 'Сергей' будет занимать по 8 байтов памяти. А при попытке ввести значение 'Александра', оно будет усечено до 'Александ', т.е. до 8 символов.
| VARCHAR (M)
| L+1 символов
| М символов
| Позволяет хранить переменные строки длиной L. Значение М - от 0 до 65535.
Примеры:
VARCHAR (3) - хранит строки максимум из 3 символов, но пустая строка '' занимает 1 байт памяти, строка 'a' - 2 байта, строк 'aa' - 3 байта, строка 'aaa' - 4 байта. Значение более 3 символов будет усечено до 3.
| BLOB, TEXT
| L+2 символов
| 216-1 символов
| Позволяют хранить большие объемы текста. Причем тип TEXT используется для хранения именно текста, а BLOB - для хранения изображений, звука, электронных документов и т.д.
| MEDIUMBLOB, MEDIUMTEXT
| L+3 символов
| 224-1 символов
| Аналогично предыдущему, но с большим размером.
| LONGBLOB, LONGTEXT
| L+4 символов
| 232-1 символов
| Аналогично предыдущему, но с большим размером.
| ENUM ('value1', 'value2', ...,'valueN')
| 1 или 2 байта
| 65535 элементов
| Строки этого типа могут принимать только одно из значений указанного множества.
Пример:
ENUM ('да', 'нет') - в столбце с таким типом может храниться только одно из имеющихся значений. Удобно использовать, если предусмотрено, что в столбце должен храниться ответ на вопрос.
| SET ('value1', 'value2', ...,'valueN')
| до 8 байт
| 64 элемента
| Строки этого типа могут принимать любой или все элементы из значений указанного множества.
Пример:
SET ('первый', 'второй') - в столбце с таким типом может храниться одно из перечисленных значений, оба сразу или значение может отсутствовать вовсе.
| Календарные типы данных Тип данных
| Объем памяти
| Диапазон
| Описание
| DATE
| 3 байта
| от '1000-01-01' до '9999-12-31'
| Предназначен для хранения даты. В качестве первого значения указывается год в формате "YYYY", через дефис - месяц в формате "ММ", а затем день в формате "DD". В качестве разделителя может выступать не только дефис, а любой символ отличный от цифры.
| TIME
| 3 байта
| от '-838:59:59' до '838:59:59'
| Предназначен для хранения времени суток. Значение вводится и хранится в привычном формате - hh:mm:ss, где hh - часы, mm - минуты, ss - секунды. В качестве разделителя может выступать любой символ отличный от цифры.
| DATATIME
| 8 байт
| от '1000-01-01 00:00:00' до '9999-12-31 23:59:59'
| Предназначен для хранения и даты и времени суток. Значение вводится и хранится в формате - YYYY-MM-DD hh:mm:ss. В качестве разделителей могут выступать любые символы отличные от цифры.
| TIMESTAMP
| 4 байта
| от '1970-01-01 00:00:00' до '2037-12-31 23:59:59'
| Предназначен для хранения даты и времени суток в виде количества секунд, прошедших с полуночи 1 января 1970 года (начало эпохи UNIX).
| YEAR (M)
| 1 байт
| от 1970 до 2069 для М=2 и от 1901 до 2155 для М=4
| Предназначен для хранения года. М - задает формат года. Например, YEAR (2) - 70, а YEAR (4) - 1970. Если параметр М не указан, то по умолчанию считается, что он равен 4.
| |