
- •Система управления базами данных MySql
- •Тема 1: Архитектура и назначение сервера. Основные функции
- •1.1. Введение в субд MySql
- •1.2. Основные программы и утилиты MySql
- •1.3. Инсталляция MySql на разных платформах
- •Контрольные вопросы
- •Тема 2: Основные типы данных и операторы субд MySql
- •Типы данных
- •Переменные
- •Операторы
- •Контрольные вопросы
- •Тема 3: Утилита mysql
- •3.1 Функции mysql
- •3.2 Работа с базами данных и таблицами
- •Контрольные вопросы
- •Тема 4: Выборка данных
- •Простые запросы
- •Объединение таблиц
- •Объединение таблицы с собой
- •Теоретико-множественные операции с таблицами
- •Подзапросы
- •Контрольные вопросы
- •Тема 5: Встроенные функции MySql
- •5.1 Общие понятия
- •5.2 Отладка и конфигурирование
- •Управляющие функции
- •If(условие, значение истина,значение_ложь)
- •Ifnull( проверяемое_значение, возвращаемое _значение)
- •Статистические и математические функции
- •Функции работы с датой и временем
Контрольные вопросы
Основные функции MySql
Перечислите утилиты MySql и дайте краткую характеристику их назначению
Принцип работы СУБД MySql
Объясните особенности установки MySql в Linux
Объясните особенности установки 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;
- её обычно применяют для хранения так называемых больших бинарных объектов, в частности файлов приложений, оцифрованных звуков и изображений;
- в командах любую строку битов следует заключать в одинарные кавычки.