Казахстан, г. Алматы, ул. Шевченко 90, БЦ «Каратал», офис 53
Казахстан, г. Астана, ул. Иманова 19, БЦ Деловой Дом "Алма-Ата", офис 612

кол-во дней: 5
кол-во часов: 40
код курса: MySQLDev

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

Необходимая предварительная подготовка:

  • Прослушивание курса MySQL for Beginners или некоторый опыт работы с реляционными базами данных и SQL
  • MySQL for Beginners (SQL-4401)


Рекомендуемые для последующего прослушивания курсы:

  • MySQL Advanced Stored Procedures (SQL-4201)
  • MySQL Developer Techniques (SQL-4305)

Цель курса:

  • Понимание этапов вызова клиентских программ MySQL
  • Использование клиентской программы MySQL общего назначения и графического пользовательского интерфейса (GUI) MySQL Query Browser для выполнения запросов и извлечения результатов
  • Выбор наилучшего типа данных для представления информации в MySQL
  • Управление структурой баз данных и таблиц в базах данных
  • Использование предложения SELECT для извлечения информации из таблиц базы данных
  • Использование выражений в предложениях SQL для получения более детальной информации
  • Использование предложений SQL для модификации контента таблиц базы данных
  • Использование соединений для получения информации из нескольких таблиц
  • Использование подзапросов в предложениях SQL
  • Создание представлений с помощью предложений SELECT для создания виртуальных таблиц со специфическими данными
  • Осуществление операций массового импортирования и экспортирования данных
  • Создание пользовательских переменных, подготовленных предложений и хранимых подпрограмм
  • Создание триггеров и управление ими
  • Использование базы данных INFORMATION_SCHEMA для доступа к метаданным
  • Отладка приложений MySQL
  • Конфигурирование и оптимизация MySQL

Круг слушателей:

  • Разработчики, желающие создавать приложения с использованием MySQL
  • Слушатели, желающие подготовиться к сертификационным экзаменам MySQL Developer

Введение

  • MySQL: обзор, продукты и сервисы.
  • MySQL Enterprise сервисы. Поддерживаемые операционные сервисы.
  • Сетификационная программа MySQL.
  • Направления обучения. Web сайт MySQL.
  • Установка MySQL и World базы данных.

Концепции MySQL клиент/сервер

  • Общая архитектура MySQL.
  • Как MySQL использует дисковое пространство.
  • Как MySQL использует память.

Клиенты MySQL

  • Вызов клиентских программ.
  • Использование файлов настроек.
  • MySQL клиент. MySQL Query Browser.
  • MySQL коннекторы.
  • API третьих фирм.
  • Запрос к табличным данным
  • Предложение SELECT.
  • Агрегирование результатов запроса.
  • Использование UNION.
  • Обработка ошибок и предупреждений
  • SQL моды.
  • Обработка ошибок отсутствия или неправильных значений данных.
  • Интерпретация сообщений об ошибках.

SQL выражения

  • Сравнения в SQL.
  • Функции в выражениях SQL.
  • Комментарии в предложениях SQL.

Типы данных

  • Обзор типов данных.
  • Числовые типы данных.
  • Символьные строки.
  • Двоичные строки.
  • Временные типы данных.
  • NULL.

Получение метаданных

  • Методы доступа к метаданным.
  • База данных/схема INFORMATION_SCHEMA.
  • Использование SHOW и DESCRIBE.
  • Команда mysqlshow.

Базы данных

  • Свойства базы данных.
  • Общие рекомендации по проектированию.
  • Идентификаторы.
  • Создание баз данных.
  • Изменение баз данных.
  • Удаление баз данных.

Таблицы

  • Создание таблиц.
  • Свойства таблицы.
  • Опции столбца.
  • Создание таблиц на основе существующих таблиц.
  • Изменение таблиц.
  • Удаление таблиц.
  • Внешние ключи.

Манипулирование табличными данными

  • Предложение INSERT.
  • Предложение DELETE.
  • Предложение UPDATE.
  • Предложение REPLACE.
  • INSERT совместно с ON DUPLICATE KEY UPDATE.
  • Предложение TRUNCATE TABLE.

Транзакции

  • Что такое транзакция?
  • Команды транзакции.
  • Уровни изоляции.
  • Блокировка.

Соединения

  • Что такое соединение?
  • Соединение таблиц в SQL.
  • Синтаксис базовых соединений.
  • Внутренние соединения.
  • Внешние соединения.
  • Другие типы соединений.
  • Соединения в предложениях UPDATE и DELETE.

Подзапросы

  • Типы подзапросов.
  • Операторы табличного подзапроса.
  • Коррелированные и некоррелированные подзапросы.
  • Преобразование подзапросов в соединения.

Представления

  • Что такое представление?
  • Создание представления.
  • Обновляемые представления.
  • Управление представлением.
  • Получение метаданных представления.

Подготовленные предложения

  • Зачем использовать подготовленные предложения?
  • Использование подготовленных предложений на клиенте MySQL.
  • Подготовка предложения.
  • Выполнение подготовленного предложения.
  • Освобождение ресурсов подготовленного предложения.

Экспортирование и импортирование данных

  • Экспортирование и импортирование данных.
  • Экспортирование и импортирование данных с помощью SQL.
  • Экспортирование и импортирование данных с помощью клиентских программ MySQL.
  • Импортирование данных с помощью команды SOURCE.

Хранимые подпрограммы

  • Что такое хранимые подпрограммы?
  • Создание, выполнение и удаление хранимых подпрограмм.
  • Составные предложения.
  • Присваивание значений переменным.
  • Объявление параметров.
  • Предложения управления программным потоком.
  • Декларирование и использование обработчиков. Курсоры.

Триггеры

  • Что такое триггеры?
  • Удаление триггеров.
  • Ограничение на триггеры.

Устройства хранения

  • Уровни SQL анализатора и устройства хранения.
  • Устройства хранения и MySQL.
  • Устройство хранения MyISAM.
  • стройство хранения InnoDB.
  • Устройство хранения MEMORY.
  • Другие устройства хранения.

Оптимизация

  • Обзор принципов оптимизации.
  • Использование индексов для оптимизации.
  • Использование EXPLAIN для анализа запросов.
  • Техника переписывания запросов.
  • Оптимизация запросов путем ограничения вывода.
  • Использование итоговых таблиц.
  • Оптимизация обновлений.
  • Выбор подходящих устройств хранения.