Типы данных (MySQL)

MySQL - реляционная СУБД, которая поддерживает несколько типов данных, которые можно разделить на три категории: числовые данныедата и время, и данные типа строка. Для более подробной информации смотрите руководство по MySQL.

Тип данныхИспользованиеДиапазоны
TINYINTОчень маленькое целое числоДиапазон числа со знаком от –128 до 127. Диапазон числа без знака (unsigned) от 0 до 255.
SMALLINTМаленькое целое числоДиапазон числа со знаком от –32768 до 32767. Диапазон числа без знака (unsigned) от 0 до 65535.
MEDIUMINTСреднее целое числоДиапазон числа со знаком от –8388608 до 8388607. Диапазон числа без знака (unsigned) от 0 до 16777215.
INT, INTEGERЦелое числоДиапазон числа со знаком от –2147483648 до 2147483647. Диапазон числа без знака (unsigned) от 0 до 4294967295.
BIGINTБольшое целое числоДиапазон числа со знаком от –9223372036854775808 до 9223372036854775807. Диапазон числа без знака (unsigned) от 0 до 18446744073709551615.
FLOATМалое (одинарной точности) число с плавающей запятой. Не может быть числом без знакаДиапазоны от –3.402823466E+38 до –1.175494351E-38, 0 и 1.175494351E-38 до 3.402823466E+38. Если количество знаков после запятой не установлено или <= 24 это число с плавающей запятой одинарной точности.
DOUBLE, DOUBLE PRECISION, REALНормальное (двойной точности) число с плавающей запятой. Не может быть числом без знакаДиапазоны от -1.7976931348623157E+308 до -2.2250738585072014E-308, 0 и 2.2250738585072014E-308 до 1.7976931348623157E+308. Если количество знаков после запятой не установлени или 25 <= количество знаков <= 53 означает числоа с плавающей запятой двойной точности.
DECIMAL, NUMERICРаспакованное число с плавающей запятойРаботает подобно типу данных CHAR: «распакованный» означает, что число хранится в виде строки, используя один символ для каждой цифры-значения. Символ десятичной запятой и символ отрицательного числа "-" не учитывается в длину. Если десятичное значение равно 0, значение не будет иметь десятичной запятой или дробной части. Максимальный размер для DECIMAL значение такое же, как и для DOUBLE, но фактический диапазон для данного столбца DECIMAL может быть ограничен в выборе длины и десятичные дроби.
DATEДатаДата в диапазоне от «1000-01-01» до «9999-12-31». MySQL хранит поле типа DATE в виде «YYYY-MM-DD» (ГГГГ-ММ-ДД).
DATETIMEДата и времяДопустимые диапазоны от «1000-01-01 00:00:00» до «9999-12-31 23:59:59». MySQL хранит поле типа DATETIME в виде «YYYY-MM-DD HH:MM:SS» (ГГГГ-ММ-ДД ЧЧ-ММ-СС).
TIMESTAMPДата и времяДиапазон от «1970-01-01 00:00:00» до, примерно, 2037 года. MySQL может хранить поле типа TIMESTAMP в видах «YYYYMMDDHHMMSS» (TIMESTAMP(14)), «YYMMDDHHMMSS» (TIMESTAMP(12)), «YYYYMMDD» (TIMESTAMP(8)) и др.
TIMEВремяДиапазон от «-838:59:59» до «838:59:59». MySQL хранит поле TIME в виде «HH:MM:SS», но позволяет присваивать значения столбцам TIME с использованием либо строки или числа.
YEARГод в 2- или 4- хцифровом виде (4 цифры по-умолчанию)Если вы используете 4 цифра, то допустимые значения 1901-2155, и 0000. Если 2 цифры, то 1970-2069 (70-69). MySQL хранит значения поля YEAR в формате «YYYY».
CHARСтрока фиксированной длины, которая справа дополняются пробелами до указанной длины, при храненииДиапазон длины от 1 до 255 символов. Завершающие пробелы удаляются, когда значение извлекается. Значения CHAR сортируются и сравниваются без учета регистра в зависимости от кодировки по умолчанию, если не установлен флаг BINARY.
VARCHARСтрока переменной длины. Примечание: конечные пробелы удаляются при сохранении (в отличие от спецификации ANSI SQL).Диапазон длины от 1 до 255 символов. Значения VARCHAR сортируются и сравниваются без учета регистра, если не установлен флаг BINARY.
TINYBLOB, TINYTEXT
BLOB или ТЕХТ с максимальной длиной 255 (2^8 — 1) символов.
BLOB, TEXT
BLOB или ТЕХТ с максимальной длиной 65535 (2^16 — 1) символов.
MEDIUMBLOB, MEDIUMTEXT
BLOB или ТЕХТ с максимальной длиной 16777215 (2^24 — 1) символов.
LONGBLOB, LONGTEXT
BLOB или ТЕХТ с максимальной длиной 4294967295 (2^32 — 1) символов.
ENUMПеречислениеСтрока-объект, который может принимать только одно значение, выбирается из списка значений «значение 1», «значение 2» или NULLENUM максимум может иметь 65535 различных значений.
SETНаборСтрока-объект, который может принимать ноль и более значений, каждоу из которых должно быть выбрано из списка значений «значение 1», «значение 2», … Поле SET может иметь максимум 64 варианта значений.

Категории

СУБДMySQL

Читайте также

Комментарии