Что означает в mysql

Подключение к серверу.

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

Подключаться к серверу нужно с помощи команды:

Выбирать конкретную Базу данных:

Закрыть подключение нужно командой:

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

Создание таблиц. Заполнение информацией БД

Вот мы подключились к серверу MySQL и выбрали БД. Что дальше? Дальше нужно создать новую таблицу. Управления БД в MySQL управляется с помощью специального языка запросов SQL. Поначалу он кажется страшным, непонятным и сложным, но через некоторое время при активной работе с БД вы сможете легко читать самые сложные с виду SQL-запросы (сам так же путался в начале..). Начнем.

Можно создавать сколько угодно полей. Заместо ТипПоля1 пишется:

Это 2 основных типа поля. На самом деле их очень много, но перечислять их — займет лишком много места. Итак, разобрались с созданием таблиц. Пример использования:

Добавление информации в БД

Для этого существует та же команда, только другой SQL-запрос:

Думаю, здесь никаких сложностей не возникнет. Единственное, значения поля с типом TEXT вводить в одинарных кавычках. И, как всегда, пример:

Изменение информации в БД

Для этого используется такая команда:

Такой командой мы обновляем записи, указанные в скобках, а данной таблице, если они подходят по какому либо условию (WHERE …). Это мы рассмотри чуть позже. Сейчас — пример:

Теперь полностью — подключение, создание таблицы, заполнение информации, ее обновление и закрытие подключения:

В итоге у нас появится новая таблица test_zero, в которой будет одна запись.

Получение информации из БД.

Допустим, у нас большущая БД, в которой хранятся сотни записей. Как же эти записи получить? Очень просто:

while($row=mysql_fetch_array($res))
<
$num=$row[ num ];
$title=$row[ title ];
$text=$row[ text ];

Условия получения информации из БД

Когда в таблице сотни записей, получать все не всегда целесообразно. Для этого вводят какое либо условие:

lИх так же достаточно много, это основные.

ОПЕРАТОР — логический оператор:

Это так же основные.

Пример вытаскивания из таблицы записей, номер которых больше 10:

И, так сказать, итоговый пример применения БД:

$res=mysql_query(«SELECT * FROM test_zero «);

while($row=mysql_fetch_array($res))
<
$num=$row[ num ];
$title=$row[ title ];
$text=$row[ text ];

Ну вот и все! Конечно, это очень простой пример, но позволит вам научится простейшие работе с БД. На основе полученных знаний можно сделать гостевую книгу, скрипт выводящий новости, систему статистики и т.д.

Если бы мне попалась эта статья пораньше — я бы не стал ее писать. Когда я еще не знал MySQL, я перерыл статей 10. Достаточно быстро научился создавать таблицы и заполнять их. А вывести не получалось. Пришлось практически методом тыка учится. специально для этого я и написал эту статью.

Источник

типы данных SQL для MySQL, SQL Server и MS Access

Тип данных определяет, какое значение может содержать столбец: целочисленные данные, символьные данные, денежные данные, данные даты и времени, двоичные строки и т. д.

Типы данных SQL

Каждый столбец в таблице базы данных должен иметь имя и тип данных.

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

Примечание: Типы данных могут иметь разные имена в разных базах данных. И даже если имя такое же, размер и другие детали могут быть разными! Всегда проверяйте документацию!

Типы данных MySQL

В MySQL есть три основных типа данных: текст, число и дата.

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

Тип данныхОписание
CHAR(size)Содержит строку фиксированной длины (может содержать буквы, цифры и специальные символы). Фиксированный размер указывается в скобках. Может хранить до 255 символов
VARCHAR(size)Содержит строку переменной длины (может содержать буквы, цифры и специальные символы). Максимальный размер указывается в скобках. Может хранить до 255 символов. Примечание: Если поместить большее значение, чем 255, оно будет преобразовано в текстовый тип
TINYTEXTСодержит строку с максимальной длиной 255 символов
TEXTСодержит строку с максимальной длиной 65 535 символов
BLOBДля BLOB-объектов (двоичные большие объекты). Удерживает до 65 535 байт данных
MEDIUMTEXTСодержит строку с максимальной длиной 16 777 215 символов
MEDIUMBLOBДля BLOB-объектов (двоичные большие объекты). Удерживает до 16 777 215 байт данных
LONGTEXTСодержит строку с максимальной длиной 4 294 967 295 символов
LONGBLOBДля BLOB-объектов (двоичные большие объекты). Удерживает до 4 294 967 295 байт данных
ENUM(x,y,z,etc.)Позволяет ввести список возможных значений. В списке Enum можно вывести до 65535 значений. Если вставленное значение отсутствует в списке, будет вставлено пустое значение.

Примечание: Значения сортируются в порядке их ввода.

Вы вводите возможные значения в этом формате: Enum (‘ X ‘, ‘ Y ‘, ‘ Z ‘)SETАналогично Enum, за исключением того, что набор может содержать до 64 элементов списка и может хранить более одного выбора

Типы данных чисел:

Тип данныхОписание
TINYINT(size)-128 до 127 нормальный. 0 до 255 неподписанный *. Максимальное количество цифр может быть указано в скобках
SMALLINT(size)-32768 до 32767 нормальный. 0 до 65535 неподписанный *. Максимальное количество цифр может быть указано в скобках
MEDIUMINT(size)-8388608 до 8388607 нормальный. 0 до 16777215 неподписанный *. Максимальное количество цифр может быть указано в скобках
INT(size)-2147483648 до 2147483647 нормальный. 0 до 4294967295 неподписанный *. Максимальное количество цифр может быть указано в скобках
BIGINT(size)-9223372036854775808 до 9223372036854775807 в норме. 0 для 18446744073709551615 неподписанных *. Максимальное количество цифр может быть указано в скобках
FLOAT(size,d)Небольшое число с плавающей запятой. Максимальное количество цифр может быть указано в параметре size. Максимальное число цифр справа от десятичной запятой указано в параметре d
DOUBLE(size,d)Большое число с плавающей запятой. Максимальное количество цифр может быть указано в параметре size. Максимальное число цифр справа от десятичной запятой указано в параметре d
DECIMAL(size,d)Значение типа Double, хранящееся в виде строки и допускающее фиксированную десятичную точку. Максимальное количество цифр может быть указано в параметре size. Максимальное число цифр справа от десятичной запятой указано в параметре d

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

Типы данных дат:

Примечание: Поддерживаемый диапазон от ‘ 1000-01-01 ‘ до ‘ 9999-12-31 ‘

DATETIME()* комбинация даты и времени. Формат: гггг-мм-DD HH: MI: SS

Примечание: Поддерживаемый диапазон от ‘ 1000-01-01 00:00:00 ‘ до ‘ 9999-12-31 23:59:59 ‘

TIMESTAMP()* Временная метка. Значения timestamp хранятся в виде количества секунд со времени Unix (‘ 1970-01-01 00:00:00 ‘ UTC). Формат: гггг-мм-DD HH: MI: SS

Примечание: Поддерживаемый диапазон от ‘ 1970-01-01 00:00:01 ‘ UTC до ‘ 2038-01-09 03:14:07 ‘ UTC

TIME()Время. Формат: HH: MI: SS

Примечание: Поддерживаемый диапазон от ‘-838:59:59 ‘ до ‘ 838:59:59 ‘

YEAR()Год в формате с двумя или четырьмя цифрами.

Примечание: Допустимые значения в формате четырех цифр: 1901 до 2155. Допустимые значения в формате с двумя цифрами: 70 до 69, представляющие годы с 1970 по 2069

* даже если DateTime и timestamp возвращаются в том же формате, они работают очень по-разному. В запросе INSERT или Update временная метка автоматически устанавливает текущую дату и время. TIMESTAMP также принимает различные форматы, такие как ииииммддххмисс, ииммддххмисс, ГГГГММДД или YYMMDD.

Типы данных SQL Server

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

Тип данныхОписаниеМаксимальный размерХранения
char(n)Фиксированная ширина символьной строки8,000 СимволовОпределенная ширина
varchar(n)Переменная ширина символьная строка8,000 Символов2 байта + количество символов
varchar(max)Переменная ширина символьная строка1,073,741,824 Символов2 байта + количество символов
textПеременная ширина символьная строка2GB of text data4 байта + количество символов
ncharФиксированная ширина строки Юникода4,000 СимволовОпределенная ширина x 2
nvarcharПеременная ширина Юникод строка4,000 Символов
nvarchar(max)Переменная ширина Юникод строка536,870,912 Символов
ntextПеременная ширина Юникод строка2GB of text data
binary(n)Фиксированная ширина двоичной строки8,000 bytes
varbinaryПеременная ширина двоичная строка8,000 bytes
varbinary(max)Переменная ширина двоичная строка2GB
imageПеременная ширина двоичная строка2GB

Типы данных чисел:

Разрешает числа от-10 ^ 38 + 1 до 10 ^ 38 – 1.

Параметр p указывает максимальное общее количество цифр, которые могут быть сохранены (как слева, так и справа от десятичной запятой). p должно быть значением от 1 до 38. Значение по умолчанию — 18.

Параметр s указывает максимальное число цифр, хранящихся справа от десятичной запятой. s должно быть значением от 0 до p. значение по умолчанию 0

5-17 bytesnumeric(p,s)Фиксированные значения точности и масштаба.

Разрешает числа от-10 ^ 38 + 1 до 10 ^ 38 – 1.

Параметр p указывает максимальное общее количество цифр, которые могут быть сохранены (как слева, так и справа от десятичной запятой). p должно быть значением от 1 до 38. Значение по умолчанию — 18.

Параметр s указывает максимальное число цифр, хранящихся справа от десятичной запятой. s должно быть значением от 0 до p. значение по умолчанию 0

5-17 bytessmallmoneyДенежные данные от-214 748,3648 до 214 748,36474 bytesmoneyДенежные данные от-922 337 203 685 477,5808 до 922 337 203 685 477,58078 bytesfloat(n)Плавающая точность данных чисел от-1.79 e + 308 до 1.79 e + 308.

Параметр n указывает, должно ли поле содержать 4 или 8 байт. float (24) содержит 4-байтное поле и float (53) содержит 8-байтное поле. Значение по умолчанию n — 53.

Источник

MySQL — царица баз

Она сложная, но с ней всё просто.

Когда мы говорили о том, какие бывают базы данных, то немного рассказали о реляционных БД. Самый очевидный пример такой базы данных — MySQL. О ней и поговорим.

⚠️ С формальной точки зрения MySQL — это не сама база данных, а система управления базой данных (СУБД). Но в языке так сложилось, что саму базу и систему её управления мы называем одними и теми же словами. Простите нас за это упрощение.

Что такое MySQL

MySQL — это реляционная база данных (СУБД). Реляционная — значит внутри неё есть данные, которые связаны между собой, и эту связь можно представить в виде таблиц.

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

Что означает в mysql. Смотреть фото Что означает в mysql. Смотреть картинку Что означает в mysql. Картинка про Что означает в mysql. Фото Что означает в mysql

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

👉 Всё, что мы делаем в MySQL, — создаём таблицы с данными и настраиваем связи между ними.

Кому это нужно

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

Вы можете обойтись и без конкретно этой системы управления. Можно использовать PostgreSQL или NoSQL. Можно просто хранить данные у клиента или в «сыром» файлике. Но если вы хотите делать систему, которую будет легко поддерживать и передать другим людям для доработки и развития, — скорее всего, вы выберете MySQL.

Как работают связи в базе данных

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

Один к одному. Это самый простой вид связи, который говорит: одной записи из этой таблицы соответствует только одна запись из другой таблицы. Если мы сделаем новую таблицу с фотографиями клиентов, то каждой фотографии будет соответствовать только один клиент и наоборот.

Один ко многим. Когда у нас есть таблица с клиентами и таблица с их покупками, тут работает связь «один ко многим». Это значит, что у нас одной записи о клиенте соответствует несколько записей об их покупках, например, если он их сделал в разное время. Благодаря этой связи мы можем вывести все покупки для каждого клиента в отдельности.

Ещё пример — художники и картины. Каждая картина принадлежит только одному художнику, но одному художнику может принадлежать много разных картин.

Многие ко многим. А вот это хитрая связь — для неё нужна отдельная таблица. Смысл такой: мы делаем промежуточную таблицу, в которой соединяем данные из одной таблицы с данными из другой. Получается, что в новой таблице как бы нет данных — в ней только связи.

Допустим, вы ведёте свой список дел в ежедневнике, где можно ставить метки для дел. Метки помогают понять, что за дело перед вами, и выглядят примерно так: «в дороге», «позвонить», «на неделе», «подписать у Иваныча» и «за компьютером». Их можно назначить любой задаче — одну метку, две или все сразу. Получается так:

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

Что может храниться в MySQL

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

Например, все наши статьи в «Коде» хранятся в MySQL-базе, с которой мы работаем через Вордпресс. Там же есть информация и об авторах, и о картинках для статей, о дате публикации и о многом другом. Чтобы вы прочитали эту статью, сайт обратился к базе данных, взял оттуда статью, правильно её обработал и показал вам.

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

Самой базе всё равно, что в ней хранится и как вы этим пользуетесь. База данных — это просто способ связать данные вместе, а потом найти в них то, что нужно.

Почему MySQL так популярна

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

Ещё в MySQL встроены системы безопасности и разграничения доступа. Например, можно сделать так, чтобы менеджер мог только вносить данные, руководитель отдела — изменять их, но не удалять, а директор мог делать с данными что угодно.

Но основная причина популярности MySQL — полная поддержка SQL-языка.

Что такое язык SQL

Чтобы работать с реляционной базой данных, нужно знать специальный язык запросов — SQL. Это расшифровывается как structured query language — язык структурированных запросов. «Структурированный» означает, что каждый запрос должен иметь определённую структуру, чтобы база поняла, как на него реагировать.

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

С помощью запросов можно делать что угодно:

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

А покажите сами запросы

Создадим базу данных THECODE_MEDIA:

CREATE DATABASE THECODE_MEDIA;

Скажем, что будем дальше работать именно с этой базой:

Создадим таблицу с названиями статей, авторами и количеством прочтений за месяц:

CREATE TABLE STATS (name VARCHAR(200), author VARCHAR(20), readers INT);

Загрузим в таблицу уже готовые данные из файла:

LOAD DATA LOCAL INFILE ‘thecode/readers_stat.txt’ INTO TABLE STATS;

А теперь выведем их на экран:

SELECT * FROM STATS;

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

Что означает в mysql. Смотреть фото Что означает в mysql. Смотреть картинку Что означает в mysql. Картинка про Что означает в mysql. Фото Что означает в mysqlРабота с MySQL через запросы в терминале

Коротко главное

Что дальше

На очереди — нереляционные базы и NoSQL. Там вообще всё не так, как здесь, поэтому разбирать будем отдельно.

Источник

Стандартные типы данных (MySQL)

Примечания

Числа

DECIMAL[(M[,D])] [UNSIGNED] [ZEROFILL]
«Неупакованное» число с плавающей точкой. Ведет себя подобно столбцу CHAR, содержащему цифровое значение. Термин «неупакованное» означает, что число хранится в виде строки и при этом для каждого десятичного знака используется один символ. Разделительный знак десятичных разрядов, а также знак `-‘ для отрицательных чисел не учитываются в M (но место для них зарезервировано). Если атрибут D равен 0, величины будут представлены без десятичного знака, т.е. без дробной части. Максимальный интервал значений типа DECIMAL тот же, что и для типа DOUBLE, но действительный интервал для конкретного столбца DECIMAL может быть ограничен выбором значений атрибутов M и D. Если указан атрибут UNSIGNED, отрицательные значения недопустимы. Если атрибут D не указан, его значение по умолчанию равно 0. Если не указан M, его значение по умолчанию равно 10. В более ранних, чем MySQL 3.23, версиях параметр M должен содержать в себе место для знака числа и десятичного знака. DEC[(M[,D])] [UNSIGNED] [ZEROFILL] и NUMERIC[(M[,D])] [UNSIGNED] [ZEROFILL] являются синонимами для DECIMAL.
DECIMAL эквивалентно DECIMAL(10,0).

Время

DATE
Дата. Поддерживается интервал от ‘1000-01-01’ до ‘9999-12-31’. MySQL выводит значения DATE в формате ‘YYYY-MM-DD’, но можно установить значения в столбец DATE, используя как строки, так и числа.

DATETIME
Комбинация даты и времени. Поддерживается интервал от ‘1000-01-01 00:00:00’ до ‘9999-12-31 23:59:59’. MySQL выводит значения DATETIME в формате ‘YYYY-MM-DD HH:MM:SS’, но можно устанавливать значения в столбце DATETIME, используя как строки, так и числа.

TIMESTAMP[(M)]
Временная метка. Интервал от ‘1970-01-01 00:00:00’ до некоторого значения времени в 2037 году. MySQL выводит значения TIMESTAMP в форматах YYYYMMDDHHMMSS, YYMMDDHHMMSS, YYYYMMDD или YYMMDD в зависимости от значений M: 14 (или отсутствующее), 12, 8, или 6; но можно также устанавливать значения в столбце TIMESTAMP, используя как строки, так и числа. Столбец TIMESTAMP полезен для записи даты и времени при выполнении операций INSERT или UPDATE, так как при этом автоматически вносятся значения даты и времени самой последней операции, если эти величины не введены программой. Можно также устанавливать текущее значение даты и времени, задавая значение NULL. Параметр M влияет только на способ вывода столбца TIMESTAMP; для хранения его значений всегда используется 4 байта. Следует учитывать, что столбцы TIMESTAMP(M), где M равно 8 или 14, представляют собой числа, в то время, как столбцы TIMESTAMP(M) с иным значением параметра M являются строками. Это убеждает, что можно надежно сделать дамп и восстановить таблицу с этими типами столбцов!
TIMESTAMP эквивалентно TIMESTAMP(14).

TIME
Время. Интервал от ‘-838:59:59’ до ‘838:59:59’. MySQL выводит значения TIME в формате ‘HH:MM:SS’, но можно устанавливать значения в столбце TIME, используя как строки, так и числа.

YEAR[(2|4)]
Год в двухзначном или четырехзначном форматах (по умолчанию формат четырехзначный). Допустимы следующие значения: с 1901 по 2155, 0000 для четырехзначного формата года и 1970-2069 при использовании двухзначного формата (70-69). MySQL выводит значения YEAR в формате YYYY, но можно задавать значения в столбце YEAR, используя как строки, так и числа (тип данных YEAR недоступен в версиях, предшествующих MySQL 3.22).
YEAR эквивалентно YEAR(4).

Символы

CHAR(M) [BINARY]
Строка фиксированной длины, при хранении всегда дополняется пробелами в конце строки до заданного размера. Диапазон параметра M составляет от 0 до 255 символов (от 1 до 255 в версиях, предшествующих MySQL 3.23). Концевые пробелы удаляются при выводе значения. Если не задан атрибут чувствительности к регистру BINARY, то величины CHAR сортируются и сравниваются как независимые от регистра в соответствии с установленным по умолчанию алфавитом. Атрибут NATIONAL CHAR (или его эквивалентная краткая форма NCHAR) представляет собой принятый в ANSI SQL способ указания, что в столбце CHAR должен использоваться установленный по умолчанию набор символов (CHARACTER). В MySQL это принято по умолчанию. CHAR является сокращением от CHARACTER. MySQL позволяет создавать столбец типа CHAR(0). В основном это полезно, если необходимо обеспечить совместимость с некоторыми старыми приложениями, которые зависят от наличия столбца, но реально эту величину не используют. Кроме того, такая возможность может очень пригодиться в случае, если необходим столбец, который может содержать только 2 значения, а именно CHAR(0) (т.е. столбец, который не определен как NOT NULL, занимает только один бит и принимает только 2 значения: NULL или «»).
CHAR эквивалентно CHAR(1).

VARCHAR(M)
Строка переменной длины. С версии 5.0.3 диапазон параметра M составляет от 0 до 65535 символов. Однако, нужно учесть, что это значение распределяется среди всех данных ряда, не считая BLOB и TEXT, которые идут отдельно. Для UTF-8 максимальная длина данных ряда будет приблизительно в три раза меньше, а именно: 21844.

Источник

Типы данных MySQL

Что такое тип данных

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

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

Типы данных MySQL

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

Целочисленные типы

Стандартные целочисленные типы SQL INTEGER (или INT) и SMALLINT поддерживаются MySQL. В качестве расширения к стандарту MySQL также поддерживает целочисленные типы TINYINT, MEDIUMINT и BIGINT. В следующей таблице показано требуемое хранилище и диапазон (максимальное и минимальное значение для целого числа со знаком и без знака) для каждого типа целого числа.

Типдлина
в байтах
Минимальное значение
(Подпись)
Максимальное значение
(Подпись)
Минимальное значение
(Без знака)
Максимальное значение
(Без знака)
TINYINT1-1281270255
SMALLINT2-3276832767065535
MEDIUMINT3-83886088388607 до016777215
INT4-2147483648214748364704294967295
BIGINT8-922337203685477580892233720368
54775807
0184467440737
09551615

Типы с плавающей точкой

Типы FLOAT и DOUBLE представляют приблизительные числовые значения данных. MySQL использует четыре байта для значений одинарной точности и восемь байтов для значений двойной точности.

ТипыОписание
FLOATТочность от 0 до 23 приводит к четырехбайтовому столбцу FLOAT одинарной точности
DOUBLEТочность от 24 до 53 приводит к восьмибайтовому столбцу двойной точности DOUBLE.

В следующей таблице показано необходимое хранилище и диапазон (максимальное и минимальное значение для целого числа со знаком и без знака) для каждого типа с плавающей запятой.

Типдлина
в байтах
Минимальное значение
(Подпись)
Максимальное значение
(Подпись)
Минимальное значение
(Без знака)
Максимальное значение
(Без знака)
FLOAT4-3.402823466E + 38-1.175494351E-381.175494351E-383.402823466E + 38
DOUBLE8-1,7976931348623
157E + 308
-2,22507385850720
14E- 308
0 и
+2,22507385850720
14E- 308
+1,797693134862315
7E + 308

Типы с фиксированной точкой

Типы данных с фиксированной точкой используются для сохранения точной точности, например, с валютными данными. В MySQL типы DECIMAL и NUMERIC хранят точные числовые значения данных. MySQL 5.6 сохраняет значения DECIMAL в двоичном формате.

Типы битовых значений

Атрибуты числового типа

MySQL поддерживает расширение для необязательного указания ширины отображения целочисленных типов данных в скобках после ключевого слова base для типа

MySQL Date and Time Types

Типы даты и времени представляют собой ДАТУ, ВРЕМЯ, DATETIME, TIMESTAMP и YEAR. Каждый тип имеет диапазон допустимых значений, а также «нулевое» значение.

DATETIME, DATE и TIMESTAMP Типы

Тип времени

MySQL объясняет сокращенные значения ВРЕМЕНИ двоеточиями как время суток. Предположим, «09: 10» означает «09: 10: 00», а не «00: 09: 10». MySQL понимает сокращенные значения без двоеточий, так как две самые правые цифры представляют секунды. Например, мы думаем, что «0910» и «0910» означают «09: 10: 00», то есть через 10 минут после 9 часов, но реальность такова, что MySQL понимает их как «00: 09: 10», то есть 9 минут и 10 секунд. Поэтому будьте осторожны с использованием сокращенного времени в MySQL.

По умолчанию значения времени, которые находятся вне TIME, преобразуются в допустимый диапазон значений времени. Например, «-930: 00: 00» и «930: 00: 00» преобразуются в «-838: 59: 59» и «838: 59: 59». Недопустимые значения TIME преобразуются в «00: 00: 00», потому что «00: 00: 00» само по себе является допустимым значением «TIME» в MySQL.

Тип года

ГОД (4) и ГОД (2) имеют разный формат отображения, но имеют одинаковый диапазон значений.
Для 4-значного формата MySQL отображает значения YEAR в формате YYYY в диапазоне от 1901 до 2155 или 0000.
Для двухзначного формата MySQL отображает только последние две (наименее значимые) цифры; например, 70 (1970 или 2070) или 69 (2069).

Вы можете указать значения YEAR в различных форматах:

Длина строкиСпектр
4-значная строкаС 1901 по 2155.
4-значный номерС 1901 по 2155 год
1- или 2-значная строкаОт 0 до 99 Значения в диапазонах от «0» до «69» и от «70» до «99» преобразуются в значения ГОД в диапазонах с 2000 по 2069 и с 1970 по 1999 год.
1- или 2-значное числоОт 1 до 99. Значения в диапазонах от 1 до 69 и от 70 до 99 преобразуются в значения ГОДА в диапазонах с 2001 по 2069 и с 1970 по 1999 год.

Типы строк

Типы строк: CHAR, VARCHAR, BINARY, VARBINARY, BLOB, TEXT, ENUM и SET.

Типы CHAR и VARCHAR

Типы CHAR и VARCHAR похожи, но отличаются тем, как они хранятся и извлекаются. Они также различаются по максимальной длине и сохранению задних пробелов.

ТипыОписаниеФормат отображенияДиапазон символов
CHARСодержит недвоичные строки. Длина фиксируется, как вы объявляете при создании таблицы. При сохранении они дополняются правыми пробелами до указанной длины.Конечные пробелы удалены.Длина может быть любым значением от 0 до 255.
VARCHARСодержит недвоичные строки. Столбцы являются строками переменной длины.Как хранится.Значение от 0 до 255 до MySQL 5.0.3 и от 0 до 65 535 в 5.0.3 и более поздних версиях.

Двоичные и варварские типы

Типы BINARY и VARBINARY похожи на CHAR и VARCHAR, за исключением того, что они содержат двоичные строки, а не недвоичные строки.

ТипыОписаниеДиапазон в байтах
BINARYСодержит двоичные строки.От 0 до 255
VARBINARYСодержит двоичные строки.Значение от 0 до 255 до MySQL 5.0.3 и от 0 до 65 535 в 5.0.3 и более поздних версиях.

Типы BLOB и TEXT

ТипыОписаниекатегорииСпектр
большой двоичный объектБольшой двоичный объект, содержащий переменное количество данных. Значения обрабатываются как двоичные строки. Вам не нужно указывать длину при создании столбца.TINYBLOBМаксимальная длина 255 символов.
MEDIUMBLOBМаксимальная длина 16777215 символов.
LONGBLOBМаксимальная длина 4294967295 символов
ТЕКСТЗначения обрабатываются как строки символов, имеющие набор символов.TINYBLOBМаксимальная длина 255 символов.
MEDIUMBLOBМаксимальная длина 16777215 символов.
LONGBLOBМаксимальная длина 4294967295 символов

Типы ENUM

Типы SET

Строковый объект, имеющий ноль или более значений, разделенных запятыми (максимум 64). Значения выбираются из списка значений, указанных во время создания таблицы.

Разница между типами данных MySQL Datetime и Timestamp

Тип DATETIME используется, когда вам нужны значения, содержащие информацию как даты, так и времени. MySQL извлекает и отображает значения DATETIME в формате «ГГГГ-ММ-ДД ЧЧ: ММ: СС». Поддерживаемый диапазон: от 1000-01-01 от 00:00:00 до 9999-12-31 23:59:59.

Тип данных TIMESTAMP также используется, когда вам нужны значения, содержащие информацию как о дате, так и о времени. У TIMESTAMP есть диапазон от «1970-01-01 00:00:01» UTC до «2038-01-19 03:14:07» UTC

Основное различие между DATETIME и TIMESTAMP заключается в том, что значения TIMESTAMP при сохранении преобразуются из текущего часового пояса в UTC и при получении возвращаются из UTC в текущий часовой пояс. Значение типа данных datetime не изменяется.

Смотрите следующий пример:

Следующая команда отображает информацию о текущем часовом поясе:

Что означает в mysql. Смотреть фото Что означает в mysql. Смотреть картинку Что означает в mysql. Картинка про Что означает в mysql. Фото Что означает в mysql

Теперь посмотрите записи;

На этом этапе типы данных datetime и timestamp имеют одинаковые значения.

Что означает в mysql. Смотреть фото Что означает в mysql. Смотреть картинку Что означает в mysql. Картинка про Что означает в mysql. Фото Что означает в mysql

В приведенном выше выводе оба поля имеют одинаковые значения. Давайте изменим часовой пояс и увидим результат.

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

Описание: типы данных MySQL

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *