Курс СУБД PostgreSQL: основы SQL/PLpgSQL. Базовый курс

Код: PostgreSQL/PLpgSQL

Продолжительность курса

40 Академических часов

Ближайшие курсы

Июль

23.07.2018 - 27.07.2018 Ект

Курс «СУБД PostgreSQL: основы SQL/PLpgSQL. Базовый курс» готовит разработчиков баз данных к управлению данными в СУБД PostgreSQL на основе SQL запросов, а также к разработке приложений под PostgreSQL на основе использования языков SQL и PLpgSQL. В рамках курса рассматривается соответствующее программное обеспечение: PostgreSQL 9.x. Для закрепления материала в курсе проводятся лабораторные занятия.

Стоимость курса

33 898 руб
Заказать

Цели курса:

Подготовить разработчиков баз данных и инженеров к написанию исполняемого кода серверной части приложений СУБД PostgreSQL средствами языков SQL и PL/pgSQL.

После прохождения курса слушатели смогут:

  • проектировать и создавать структуру базы данных;

  • использовать инструкции SQL для выборки, изменения и удаления данных;

  • использовать различные типы данных и функции в запросах SQL и PL/pgSQL;

  • разрабатывать и отлаживать блоки кода на языке PL/pgSQL;

  • конструировать код запросов динамически из кода приложения;

  • настраивать триггеры, проводить перехват ошибок в исполняемом коде.

Аудитория

Разработчики баз данных с минимальным опытом или без опыта работы с PostgreSQL

От слушателя требуется

  • основы работы с ОС семейства Linux

  • начальные знания по основам PostgreSQL

Содержание курса

Модуль 1.  Введение в PostgreSQL

  • Установка и управление сервером
  • Настройка параметров сервера
  • Подключение с помощью psql

Лабораторная работа 1. Подключение к СУБД с помощью клиента psql

Модуль 2.  Структура PostgreSQL

  • Архитектура PostgreSQL
  • Многоверсионность, блокировки и транзакции
  • Структура буферного кэша
  • Журналирование

Лабораторная работа 2.1. Многоверсионность и блокировки
Лабораторная работа 2.2. Работа с кэшем и журналами

Модуль 3.  Физическая структура данных

  • Файлы данных и табличные пространства
  • Слои
  • Технология TOAST

Лабораторная работа 3. Работа с табличными пространствами

Модуль 4.  Логическая структура данных

  • База данных
  • Схема данных
  • Системный каталог

Лабораторная работа 4. Работа со схемой данных

Модуль 5.  Проектирование приложения

  • Принципы проектирования структуры базы данных
  • Требования форм нормализации данных
  • Разработка схемы данных приложения

Лабораторная работа 5. Разработка схемы данных приложения

Модуль 6.  Введение в язык SQL

  • Основные понятия. Общий синтаксис команд
  • Типы данных
  • Работа с таблицами
  • Описание типов данных, ограничения.
  • Связи между таблицами
  • Представления данных

Лабораторная работа 6. Работа с таблицами базы данных

Модуль 7.  Формирование запросов SQL к базе данных

  • Лексическая структура, выражения
  • Запросы на выборку данных
  • Использование связей между таблицами в запросах
  • Модифицирующие запросы
  • Запросы на удаление данных

Лабораторная работа 7. Работа с запросами

Модуль 8.  Обращение к данным из клиентских приложений

  • Протокол для обращения к БД
  • Работа с транзакциями
  • Интерфейс пользователя

Лабораторная работа 8. Работа с представлениями

Модуль 9.  Использование функций в SQL

  • Функции: параметры и возвращаемые значения
  • Вызов функций в запросах
  • Подстановки в запросах
  • Ограничения

Лабораторная работа 9. Использование функций в запросах

Модуль 10.  Работа с составными типами данных

  • Составные типы и их параметры
  • Функции, возвращающие составной тип
  • Варианты вызова функций

Лабораторная работа 10. Использование составных типов в функциях запросов

Модуль 11.  Основы языка PL/pgSQL

  • Общие сведения о процедурных языках
  • Блоки и их структура
  • Работа с переменными и выражениями
  • Использование функций в PL/pgSQL
  • Ветвления и циклы

Лабораторная работа 11. Написание функций в PL/pgSQL

Модуль 12.  Работа с запросами SQL в PL/pgSQL

  • Выполнение инструкций SQL
  • Подстановка переменных
  • Использование табличных функций

Лабораторная работа 12. Использование запросов в блоках PL/pgSQL

Модуль 13.  Использование курсоров в PL/pgSQL

  • Общие сведения о курсорах
  • Описание и открытие курсора
  • Использование курсоров для обработки данных
  • Операции с курсорами

Лабораторная работа 13. Работа с курсорами

Модуль 14.  Динамическое построение запросов

  • Назначение и возможности динамических запросов
  • Выполнение динамического запроса
  • Конструкции динамических запросов

Лабораторная работа 14. Динамические запросы

Модуль 15.  Работа с массивами

  • Общие сведения о массивах
  • Использование функций для обработки массивов
  • Работа с массивами средствами PL/pgSQL

Лабораторная работа 15. Работа с массивами

Модуль 16. Исключения: перехват ошибок

  • Необходимость работы с исключениями
  • Перехват ошибок
  • Журналирование ошибок
  • Уровни обработки ошибок

Лабораторная работа 16. Работа с исключениями

Модуль 17.  Использование триггеров

  • Общие сведения о триггерах
  • Функции-обработчики триггеров
  • Варианты использования триггеров
  • Триггеры, срабатывающие по событиям

Лабораторная работа 17. Настройка триггеров

Модуль 18.  Отладка программного кода

  • Способы отладки
  • Использование служебных сообщений для отладки
  • Трассировка

Лабораторная работа 18. Отладка кода приложения

Модуль 19.  Разграничение доступа

  • Пользователи и роли
  • Привилегии
  • Политики защиты записей
  • Разграничение подключений к серверу

Лабораторная работа 19. Управление ролями и привилегиями