Mysql типы полей: Типы полей в 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 и от 1.175494351E-38 до 3.402823466E+38
DOUBLE, REAL числа с плавающей запятой (двойной точности) Диапазон от -1.7976931348623157E+308 до -2.2250738585072014E-308 и от 2.2250738585072014E-308 до 1.7976931348623157E+308
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 временная отметка Диапазон от ‘1970-01-01 00:00:00′ до 2037 года, отображается в виде YYYYMMDDHHMMSS или YYMMDDHHMMSS или YYYYMMDD или YYMMDD
TIME время Диапазон от ‘-838:59:59 до ‘838:59:59′, отображается в виде ‘HH:MM:SS’
YEAR год (2-х или 4-х циферное представление) Диапазон от 1901 до 2155 (для 4-х циферного представления) и 1970-2069 (70-69, для 2-х циферного представление), отображается в виде ‘YYYY’
CHAR строка фиксированной длины Диапазон от 1 до 255 символов, пробелы по краям обрезаются при получении значения, заполняется пробелом до заданной длины (если символов меньше, чем заданная длина), сортировка и сравнение значений регистро-независимое
VARCHAR строка изменяющийся длины Диапазон от 1 до 255 символов, пробелы по краям обрезаются при сохранении, сортировка и сравнение значений регистро-независимое
TINYBLOB, TINYTEXT столбец типа BLOB или TEXT, максимальная длина 255 символов
BLOB, TEXT столбец типа BLOB или TEXT, максимальная длина 65535 символов
MEDIUMBLOB, MEDIUMTEXT столбец типа BLOB или TEXT, максимальная длина 16777215 символов
LONGBLOB, LONGTEXT столбец типа BLOB или TEXT, максимальная длина 4294967295 символов
ENUM перечисление строковый объект, может иметь только одно значение из списка, максимальное количество уникальных элементов – 65535
SET множество строковый объект, может иметь 0 или больше значений из списка, максимальное количество элементов – 64

Требования к памяти для числовых типов

Тип столбца Требуемая память
TINYINT 1 byte
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)

Требования к памяти для типов даты и времени

Тип столбца Требуемая память
DATE 3 байта
DATETIME 8 байтов
TIMESTAMP 4 байта
TIME 3 байта
YEAR 1 байт

Требования к памяти для символьных типов

Тип столбца Требуемая память
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)

VARCHAR, BLOB и TEXT являются типами данных с переменной длиной строки, для таких типов требования к памяти в общем случае определяются реальным размером величин в столбце (представлен символом L в приведенной выше таблице), а не максимально возможным для данного типа размером. Например, столбец VARCHAR(10) может содержать строку с максимальной длиной 10 символов. Реально требуемый объем памяти равен длине строки (L) плюс 1 байт для записи длины строки. Для строки ‘abcd’ L равно 4 и требуемый объем памяти равен 5 байтов.

В случае типов данных BLOB и TEXT требуется 1, 2, 3 или 4 байта для записи длины значения данного столбца в зависимости от максимально возможной длины для данного типа.

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

Размер объекта ENUM определяется количеством различных перечисляемых величин. Один байт используется для перечисления до 255 возможных величин. Используя два байта, можно перечислить до 65535 величин. 

Размер объекта SET определяется количеством различных элементов множества. Если это количество равно N, то размер объекта вычисляется по формуле (N+7)/8 и полученное число округляется до 1, 2, 3, 4 или 8 байтов. Множество SET может иметь максимум 64 элемента.


13.02.2010 06:57

Типы полей в MySQL

В этой статье мы освятим очень важный вопрос, связанный с тем, какие типы полей в таблицах предоставляет нам MySQL. Ведь не секрет, что записи в таблицах должны соответствовать этим типам. И каждая ячейка записи должна удовлетворять определённым условиям, которые как раз и задаются типом поля в MySQL.

Давайте с Вами по порядку разберём все типы полей в MySQL

1. VARCHAR. Это тип является строковым, причём строкой переменной длины от 0 до 255 символов.

2. TINYINT. Это тип целых чисел. Диапазон значений от -127 до 128, либо 0 до 255, в зависимости от того, может ли это поле быть отрицательным. О том, как это задавать, я расскажу ниже.

3. TEXT (BLOB). Это обычный строковый тип, в котором максимальная длина составляет 65535 символов. Идеальный вариант для хранения текстов статей.

4. DATE. Этот тип отвечает за дату. Формат следующий: “YYYY-MM-DD“. Например, такое значение будет удовлетворять этому полю: “2011-01-02“.

5. SMALLINT. Также, как и TINYINT – это целый тип данных, но диапазон значений уже побольше: -32768 до 32767, либо от 0 до 65535.

6. MEDIUMINT. Ещё один целый тип, но диапазон значений ещё больше: от -8388608 до 8388607, либо от 0 до 16777215.

7. INT. Самый часто используемый целый тип данных. Его диапазон: от -2147483648 до 2147483647, либо от 0 до 4294967295.

8. BIGINT. Последний целый тип, который используется достаточно редко, так как его диапазон значений особо не востребован: от -9223372036854775808 до 9223372036854775807, либо от 0 до 18446744073709551615.

9. FLOAT. Вещественный тип данных. Точность одинарная, то есть число знаков после запятой может быть не более 24-х. Диапазон значений: от -3,402823466E+38 до -1,175494351E-38, 0, и от 1,175494351E-38 до 3,402823466E+38.

10. DOUBLE. Тот же FLOAT, но с двойной точностью. Количество знаков после запятой может составлять до 53-х. Допустимые значения: от -1,7976931348623157E+308 до -2,2250738585072014E-308, 0, и от 2,2250738585072014E-308 до 1,7976931348623157E+308. В общем, если Вам нужны действительно огромные числа, то DOUBLE – это наилучший выбор.

11. DECIMAL. Редко используемый тип даных, но тем не менее. Это число, похожее на тип DOUBLE, но хранится оно в виде строки. И, фактически, интервал допустимых значений определяется наличием знака “” и “.“. Если эти знаки отсутсвуют, то допустимый интервал такой же, как и у DOUBLE.

12. DATETIME. Тип данных, отвечающих за хранение даты и времени. Формат следующий: “YYYY-MM-DD HH:MM:SS“.

13. TIMESTAMP. Определённая временная метка, которая может иметь один из следующих форматов: “YYYYMMDDHHMMSS“, “YYMMDDHHMMSS“, “YYYYMMDD“, “YYMMDD“.

14. TIME. Простой тип, отвечающий за время в формате: “HH:MM:SS“.

15. YEAR. Тип, отвечающий за год в одном из двух форматов: “YY“, “YYYY“.

16. CHAR. Строка фиксированной длины. Диапазон состовляет от 0 до 255 символов. При хранении данный тип добавляет к концу строки количество пробелов до заданного размера.

17. TINYTEXT (TINYBLOB). Текст с длиной от 0 до 255 символов.

18. MEDIUMTEXT (MEDIUMBLOB). Текст с длиной от 0 до 16777215 символов.

19. LONGTEXT (LONGBLOB). Текст с длиной от 0 до 4294967295 символов.

20. ENUM. Этот тип содержит список значений. Другими словами, значение соответствующей ячейки записи должно быть выбрано из списка допустимых строковых значений (аналог radiobutton). Максимальное количество значений 65535.

21. SET. Набор значений. Если в ENUM должно быть выбрано только одно, то тут может быть выбрано сразу несколько значений (аналог checkbox). Максимальное количество значений, хранимых в SET64.

Вот мы и познакомились со всеми типами полей в MySQL. Как и обещал, рассказываю, как выбрать, какое число будет использоваться: положительное или отрицательное. Для этого есть специальный атрибут UNSIGNED, который если стоит, то число положительное, а если его нет, то число может быть как положительным, так и отрицательным. Впрочем, потом Вы всё поймёте, а пока просто примите это к сведению.

Разумеется, всё это запоминать не нужно. И давайте я сейчас Вам перечислю типы, которые используются очень часто и которые многократно использовал я сам:

  • VARCHAR – идеальный тип данных для всяких логинов, паролей, заголовков статей, имён, фамилий и прочего.
  • TINYINT – используется для всяких “флагов”. Например, активирован пользователь на сайте или нет, заблокирован пользователь на сайте или нет. Также используется для численной оценки прав пользователя. Например, “1” – это Гость, “2” – Зарегистрированный, “3” – Администратор и так далее.
  • TEXT – используется для хранения текста, разумеется, используется очень часто.
  • INT – самый популярный вариант использования этого типа – это ID (уникального идентификатора), который уникален для каждой записи в таблице.
  • DATETIME – используется для хранения даты и времени. Например, можно хранить дату и время отправки сообщения на форуме, дату и время регистрации пользователя и так далее.
  • ENUM – используется реже тех, которые я описал выше, но тем не менее. Самый простой пример использования этого типа – это словесное описание прав пользователя: “Гость“, “Зарегистрированный“, “Администратор“.

Как видите, типов полей в MySQL очень много, но используются активно всего 5-6, поэтому всё очень и очень просто.

Удачи!

  • Создано 02.01.2011 21:09:18

  • Михаил Русаков

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

Обзор

типов данных MySQL

Резюме : В этом руководстве вы узнаете о типах данных MySQL и о том, как их эффективно использовать при проектировании баз данных в MySQL.

Таблица базы данных содержит несколько столбцов с определенными типами данных, такими как числовые или строковые. MySQL предоставляет больше типов данных, кроме числовых и строковых. Каждый тип данных в MySQL можно определить по следующим характеристикам:

  • Вид значений, которые он представляет.
  • Занимаемое пространство и значения фиксированной или переменной длины.
  • Значения типа данных могут быть индексированы или нет.
  • Как MySQL сравнивает значения определенного типа данных.

Загрузить Обзор типов данных MySQL

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

В MySQL вы можете найти все стандартные числовые типы SQL, включая точные числовые типы данных и приблизительные числовые типы данных, включая целые, с фиксированной запятой и с плавающей запятой. Кроме того, MySQL также имеет BIT  тип данных для хранения битовых значений. Числовые типы могут быть со знаком или без знака, за исключением типа BIT .

В следующей таблице представлена ​​сводка числовых типов в MySQL:

Числовые типы Описание
  TINYINT Очень маленькое целое число
  SMALLINT Маленькое число целое число
  СРЕДНИЙ Среднее целое число
  INT Стандартное целое число
  BIGINT 900 50

Большое целое число
  ДЕСЯТИЧНОЕ Число с фиксированной точкой
FLOAT Число с плавающей запятой одинарной точности
  DOUBLE Число с плавающей запятой двойной точности
  BIT Битовое поле

Логический тип данных MySQL

MySQL не имеет встроенного BOOLEAN или 9002 9 Тип данных BOOL . Для представления логических значений MySQL использует наименьший целочисленный тип TINYINT(1) . Другими словами, BOOLEAN и BOOL являются синонимами TINYINT(1).

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

В MySQL строка может содержать что угодно, от простого текста до двоичных данных, таких как изображения или файлы. Строки можно сравнивать и искать на основе сопоставления с образцом с помощью LIKE , регулярное выражение и полнотекстовый поиск.

В следующей таблице показаны строковые типы данных в MySQL:

Типы строк Описание
  CHAR Недвоичная (символьная) строка фиксированной длины
  VARCHAR Недвоичная строка переменной длины
  BINARY Двоичная строка фиксированной длины
  VARBINARY Двоичная строка переменной длины
  TINYBLOB Очень маленький BLOB ( двоичный большой объект)
  BLOB Маленький BLOB
  MEDIUMBLOB BLOB среднего размера
  LONGBLOB Большой BLOB
  9002 9 TINYTEXT Очень маленькая недвоичная строка
  ТЕКСТ Недвоичная строка небольшого размера string
  LONGTEXT Большая недвоичная строка
  ENUM Перечисление; каждому значению столбца может быть назначен один член перечисления
  SET Набор; каждому значению столбца может быть присвоено ноль или более SET членов

Типы данных даты и времени MySQL

MySQL предоставляет типы для даты и времени, а также комбинацию даты и времени. Кроме того, MySQL поддерживает тип данных timestamp для отслеживания изменений в строке таблицы. Если вы просто хотите хранить годы без дат и месяцев, вы можете использовать тип данных YEAR .

Следующая таблица иллюстрирует типы данных даты и времени MySQL:

900 38

Типы даты и времени Описание
  DATE Значение даты в формате CCYY-MM-DD
  ВРЕМЯ Значение времени в формате чч:мм:сс format
  DATETIME Значение даты и времени в формате CCYY-MM-DD hh:mm:ss format
  TIMESTA MP Значение метки времени в формате CCYY-MM-DD hh: мм:сс 9Формат 0030
  ГОД Год в формате CCYY или YY Формат

9002 2 Типы пространственных данных MySQL

MySQL поддерживает множество типов пространственных данных, которые содержат различные виды геометрических и географических значений как показаны в следующей таблице:

Типы пространственных данных Описание
  ГЕОМЕТРИЯ Пространственная значение любого типа
  POINT Точка (пара координат X-Y)
  LINESTRING Кривая (одна или более POINT значений)
  POLYGON Многоугольник A
  GEOMETRYCOLLECTION Набор значений GEOMETRY
  MULTILINESTRING 9005 0

Набор из LINESTRING значений
  MULTIPOINT Набор значений POINT
  MULTIPOLYGON 90 030 Набор из значений POLYGON

Тип данных JSON

MySQL поддерживает собственный JSON , начиная с версии 5. 7.8, который позволяет более эффективно хранить документы JSON и управлять ими. Собственный тип данных JSON обеспечивает автоматическую проверку документов JSON и оптимальный формат хранения.

В этом руководстве вы изучили различные типы данных MySQL, которые помогут вам определить, какой тип данных следует использовать для столбцов при создании таблиц.

Было ли это руководство полезным?

Типы данных MySQL — javatpoint

следующий →
← предыдущая

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

Мы можем определить тип данных в MySQL со следующими характеристиками:

  • Тип значений (фиксированные или переменные), которые он представляет.
  • Требуемый объем памяти зависит от того, имеют ли значения фиксированную или переменную длину.
  • Его значения могут быть проиндексированы или нет.
  • Как MySQL выполняет сравнение значений определенного типа данных.

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

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

MySQL имеет все необходимые числовые типы данных SQL. Эти типы данных могут включать точные числовые типы данных (например, целые, десятичные, числовые и т. д.), а также приблизительные числовые типы данных (например, числа с плавающей запятой, вещественные числа и двойная точность). Он также поддерживает тип данных BIT для хранения битовых значений. В MySQL числовые типы данных подразделяются на два типа: со знаком или без знака, за исключением битового типа данных.

Следующая таблица содержит все числовые типы данных, которые поддерживаются в MySQL:

Синтаксис типа данных Описание
МАЛЕНЬКИЙ Это очень маленькое целое число, которое может быть со знаком или без знака. Если со знаком, допустимый диапазон составляет от -128 до 127. Если без знака, допустимый диапазон составляет от 0 до 255. Мы можем указать ширину до 4 цифр. Для хранения требуется 1 байт.
МАЛЕНЬКИЙ Это небольшое целое число, которое может быть со знаком или без знака. Если со знаком, допустимый диапазон составляет от -32768 до 32767. Если без знака, допустимый диапазон составляет от 0 до 65535. Мы можем указать ширину до 5 цифр. Для хранения требуется 2 байта.
СРЕДНИЙ Целое число среднего размера, которое может быть со знаком или без знака. Допустимый диапазон для знака — от -8388608 до 8388607. Если без знака — допустимый диапазон от 0 до 16777215. Мы можем указать ширину до 9 цифр. Для хранения требуется 3 байта.
INT Это целое число нормального размера, которое может быть со знаком или без знака. Если со знаком, допустимый диапазон составляет от -2147483648 до 2147483647. Если без знака, допустимый диапазон составляет от 0 до 4294967295. Мы можем указать ширину до 11 цифр. Для хранения требуется 4 байта.
БОЛЬШОЙ Это большое целое число, которое может быть со знаком или без знака. Для знака допустимый диапазон составляет от -9223372036854775808 до 9223372036854775807. Если без знака, допустимый диапазон составляет от 0 до 18446744073709551615. Мы можем указать ширину до 20 цифр. Для хранения требуется 8 байт.
ПЛАВ (m,d) Это число с плавающей запятой, которое не может быть беззнаковым. Вы можете определить длину отображения (м) и количество десятичных знаков (д). Это не требуется и по умолчанию будет равно 10,2, где 2 — количество десятичных знаков, а 10 — общее количество цифр (включая десятичные). Десятичная точность может доходить до 24 знаков для типа с плавающей запятой. Для хранения требуется 2 байта.
ДВОЙНОЙ (м, д) Это число двойной точности с плавающей запятой, которое не может быть беззнаковым. Вы можете определить длину отображения (м) и количество десятичных знаков (д). Это не требуется и по умолчанию будет равно 16,4, где 4 — количество десятичных знаков. Десятичная точность может доходить до 53 знаков для двойного числа. Реал — это синоним двойного. Для хранения требуется 8 байт.
ДЕСЯТИЧНЫЙ (м, д) Неупакованное число с плавающей запятой, которое не может быть беззнаковым. В распакованных десятичных числах каждое десятичное число соответствует одному байту. Требуется определить длину отображения (м) и количество десятичных знаков (д). Числовое значение является синонимом десятичного числа.
БИТ(м) Используется для хранения битовых значений в столбце таблицы. Здесь M определяет количество битов на значение в диапазоне от 1 до 64.
Логический Используется только для истинного и ложного состояния. Числовое значение 1 считалось истинным, а 0 — ложным.
логическое значение Аналогичен BOOL.

Дата и время Тип данных:

Этот тип данных используется для представления временных значений, таких как дата, время, дата-время, отметка времени и год. Каждый временной тип содержит значения, в том числе нулевое. Когда мы вставляем недопустимое значение, MySQL не может его представить, и тогда используется нулевое значение.

В следующей таблице показаны все типы данных даты и времени, которые поддерживаются в MySQL:

Синтаксис типа данных Максимальный размер Пояснение
ГОД[(2|4)] Значение года в виде 2 или 4 цифр. По умолчанию 4 цифры. Для хранения требуется 1 байт.
ДАТА Диапазон значений от «1000-01-01» до «9999-12-31». Отображается как «гггг-мм-дд». Для хранения требуется 3 байта.
ВРЕМЯ Диапазон значений от «-838:59:59» до «838:59:59». Отображается как «ЧЧ:ММ:СС». Для хранения требуется 3 байта плюс доли секунды.
ДАТАВРЕМЯ Диапазон значений от «1000-01-01 00:00:00» до «9999-12-31 23:59:59». Отображается как «гггг-мм-дд чч:мм:сс». Для хранения требуется 5 байт плюс доли секунды.
TIMESTAMP(м) Диапазон значений от '1970-01-01 00:00:01' UTC до '2038-01-1903:14:07' ТК. Отображается как «ГГГГ-ММ-ДД ЧЧ:ММ:СС». Для хранения требуется 4 байта плюс доли секунды.

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

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

В следующей таблице показаны все строковые типы данных, которые поддерживаются в MySQL:

Синтаксис типа данных Максимальный размер Пояснение
СИМВОЛ(размер) Максимальный размер может составлять 255 символов. Здесь размер — это количество символов, которое нужно сохранить. Строки фиксированной длины. Пробел дополняется справа для символов одинакового размера.
VARCHAR(размер) Максимальный размер может составлять 255 символов. Здесь размер — это количество символов, которое нужно сохранить. Строка переменной длины.
TINYTEXT(размер) Максимальный размер может составлять 255 символов. Здесь размер — это количество символов, которое нужно сохранить.
ТЕКСТ (размер) Максимальный размер 65 535 символов. Здесь размер — это количество символов, которое нужно сохранить.
СРЕДНЕТЕКСТ (размер) Максимальный размер может составлять 16 777 215 символов. Здесь размер — это количество символов, которое нужно сохранить.
ДЛИННЫЙ ТЕКСТ (размер) Может иметь максимальный размер 4 ГБ или 4 294 967 295 символов. Здесь размер — это количество символов, которое нужно сохранить.
ДВОИЧНЫЙ (размер) Максимальный размер может составлять 255 символов. Здесь размер — это количество двоичных символов для хранения. Строки фиксированной длины. Пробел дополняется справа для символов одинакового размера.
(представлено в MySQL 4.1.2)
VARBINARY(размер) Максимальный размер может составлять 255 символов. Здесь размер — это количество символов, которое нужно сохранить. Строка переменной длины.
(представлено в MySQL 4.1.2)
ЕНУМ Занимает 1 или 2 байта в зависимости от количества значений перечисления. ENUM может содержать не более 65 535 значений. Это сокращение от перечисления, что означает, что каждый столбец может иметь одно из указанных возможных значений. Он использует числовые индексы (1, 2, 3…) для представления строковых значений.
КОМПЛЕКТ Занимает 1, 2, 3, 4 или 8 байтов в зависимости от количества элементов набора. Он может хранить максимум 64 члена. Может содержать ноль и более или любое количество строковых значений. Они должны быть выбраны из предопределенного списка значений, указанных при создании таблицы.

Двоичные типы данных больших объектов (BLOB):

BLOB в MySQL — это тип данных, который может содержать переменный объем данных. Они делятся на четыре разных типа в зависимости от максимальной длины значений, которые могут содержаться.

В следующей таблице показаны все типы данных Binary Large Object, которые поддерживаются в MySQL:

Синтаксис типа данных Максимальный размер
МАЛЕНЬКИЙБЛОБ Он может содержать максимальный размер 255 байт.
BLOB (размер) Он может содержать максимальный размер 65 535 байт.
СРЕДНИЙБЛОБ Он может содержать максимальный размер 16 777 215 байт.
ДЛИННЫЙ БЛОБ Он может содержать максимальный размер 4 ГБ или 4 294 967 295 байт.

Типы пространственных данных

Это особый тип данных, который используется для хранения различных геометрических и географических значений. Он соответствует классам OpenGIS. В следующей таблице показаны все пространственные типы, которые поддерживаются в MySQL:

.

Типы данных Описания
ГЕОМЕТРИЯ Это точка или совокупность точек, которые могут содержать пространственные значения любого типа, имеющие местоположение.
ТОЧКА Точка в геометрии представляет одно местоположение. Он хранит значения координат X, Y.
ПОЛИГОН Это плоская поверхность, представляющая многостороннюю геометрию. Он может быть определен нулем или более внутренними границами и только одной внешней границей.
LINESTRING Это кривая, имеющая одно или несколько точечных значений. Если он содержит только две точки, он всегда представляет линию.
КОЛЛЕКЦИЯ GEOMETRYCOLLECTION Это тип геометрии, который имеет набор из нуля или более значений геометрии.
МНОГОЛИНЕЙНАЯ СТРОКА Это геометрия с несколькими кривыми, которая содержит набор значений линии.
МНОГОТОЧЕЧНЫЙ Это набор из нескольких точечных элементов. Здесь точку никак нельзя связать или упорядочить.
МНОГОУГОЛЬНИК Это многоповерхностный объект, представляющий набор из нескольких полигональных элементов. Это тип двумерной геометрии.

Тип данных JSON

MySQL обеспечивает поддержку собственного типа данных JSON начиная с версии v5.7.8. Этот тип данных позволяет нам быстро и эффективно хранить и получать доступ к документу JSON.