2. Перечислите утилиты MySql и дайте краткую характеристику их назначению
3. Принцип работы СУБД MySql
4. Объясните особенности установки MySql в Linux
5. Объясните особенности установки MySql в Windows
Тема 2: Основные типы данных и операторы СУБД MySql
Цель: рассмотреть основные типы данных, переменные и операторы MySql
Выбор правильного типа столбца – одно из важных условий построения качественной и быстрой базы данных. Тип данных имеет следующие характеристики:
· любой столбец в какой угодно таблице может содержать данные какого-нибудь, но только одного типа данных;
· тип данных должен относиться к разрешенным для данной СУБД;
· тип данных налагает ограничения на значения, которые разрешается хранить в любом столбце, и определяет те операции, которые с этими значениями можно выполнять;
· тип данных определяет порядок сортировки этого столбца.
В MySql используется два фундаментальных типа данных: строки и числа.
Строковые типы данных.
Длина строки может быть как фиксированной, так и переменной. В строках учитывается регистр. В командах SQL любая строка или строковый литерал должны заключаться в кавычки.
Таблица 2.1 – Строковые типы данных
Тип
Размер
Описание
CHAR[длина]
Число байтов равное
длина
Поле фиксированной длины
от 0 до 255 символов
VARCHAR[длина]
длина + 1 байт
Поле переменной длины о 0 до
255 символов
TINYTEXT
длина + 1 байт
Строка длиной не более 255 символов
TEXT
длина + 2 байта
Строка длиной не более 65535 символов
MEDIUMTEXT
длина + 3 байта
Строка длиной не более 16777215 символов
LONGTEXT
длина + 4 байта
Строка длиной не более 4294967295 символов
В MySql существует также тип BLOB, которые технически почти не отличается от типа TEXT, единственная разница в том, что BLOB подразумевает различие прописных и строчных букв, а TEXT – нет.
Числовые типы данных.
Числовые литералы записываются в виде цепочек цифр без каких-либо кавычек. Числу может предшествовать знак минус, а если это дробное число, то оно будет содержать десятичную точку.
Максимальная разрядность целых чисел – 64 бита, т.е. числа, больше чем 264, будут представляться неправильно.
MySQL понимает научную запись дробных чисел. Это означает, что после мантиссы числа можно указывать символ экспоненты и показатель степени. Например, запись 1.2у+3 соответствует числу 1200. Чтобы не возникало неоднозначностей, показателю степени должен предшествовать знак «плюс» или «минус».
Точное числовое значение имеет произвольные, но фиксированные точность и масштаб, где:
- точностью называется общее количество цифр в десятичной записи числа без учета десятичной точки;
- масштабом называется число цифр справа от десятичной точки.
Числовые колонки могут иметь атрибут UNSIGNED (без знака), а любые числовые колонки – атрибут ZEROFILL (с заполнением нулями).
Таблица 2.2 – Числовые типы данных
Тип
Размер
Описание
TINYINT[длина]
1 байт
Целое число в диапазоне от -128 до 127 или от 0 до 255
SMALLINT[длина]
2 байта
Целое число в диапазоне от -32768 до 32767 или от 0 до 65535
MEDIUMINT[длина]
3 байта
Целое число в диапазоне от -8386608 до 8388607 или от 0 до 16777215
INT[длина]
4 байта
Целое число в диапазоне от -2147483648 до 2147483647 или от 0 до 4294967295
BIGINT[длина]
8 байт
Целое число в диапазоне от -9223372036854775808 до 9223372036854775807 или от 0 до 18446744073709551615
FLOAT[точность, масштаб]
4 байта
Небольшое число с плавающей точкой
DOUBLE[точность, масштаб]
8 байт
Большое число с плавающей точкой
DECIMAL[точность, масштаб]
длина + 1 байт
Число типа DOUBLE, хранящееся в виде с фиксированной десятичной точкой
Прочие типы данных.
Если в колонке необходимо хранить нечисловые и нетекстовые данные, то следует выбрать один из дополнительных типов данных предоставляемых СУБД.
Таблица 2.3 – Прочие типы данных
Тип
Размер
Описание
DATE
3 байта
Дата в формате ГГГГ-ММ-ДД
DATETIME
8 байт
Дата и время в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС (год, месяц, день, часы, минуты, секунды)
TIMESTAMP
4 байта
Временной штамп в формате ГГГГММДДЧЧММСС; допустимый диапазон – до 2037 года
TIME
3 байта
Время в формате ЧЧ:ММ:СС
YEAR
1 байт
Год в формате ГГ или ГГГГ
ENUM
1 байт или 2 байта
Перечисление, означающее, что в колонке может находиться одно из нескольких допустимых значений
Продолжение таблицы 2.3
Тип
Размер
Описание
SET
1,2,3,4 или 8 байт
В колонке может храниться одно или несколько из перечисляемых допустимых значений.
TINYBLOB
длина + 1 байт
Двоичные данные длиной до 255 символов
BLOB
длина + 2 байта
Двоичные данные длиной до 65535 символов
Битовые типы данных служат для того, чтобы представлять двоичные числа. Любая строка битов отличается следующими характеристиками:
- является упорядоченной последовательностью, состоящей из какого-то числа, возможно из 0, битов;
- каждый бит имеет значение 0 или 1;
- её обычно применяют для хранения так называемых больших бинарных объектов, в частности файлов приложений, оцифрованных звуков и изображений;
- в командах любую строку битов следует заключать в одинарные кавычки.