Тема 1. Основы языка PL/pgSQL
1.1 PL/pgSQL — процедурный язык SQL
Введение в язык PL/pgSQL.
Общие сведения о процедурных языках.
Работа с переменными и выражениями.
Основные операторы.
1.2 Управляющие структуры
Блоки и их структура.
Условные операторы.
Простые циклы.
Цикл по результатам запроса
1.3 Пользовательские функции
Использование функций в PL/pgSQL.
Создание пользовательских функций.
Объявление параметров функции.
Практические занятия
Написание функций в PL/pgSQL
Тема 2. Работа с запросами SQL в PL/pgSQL
2.1 SQL-операторы и выражения внутри функции на PL/pgSQL
Выполнение инструкций SQL.
Подстановка переменных.
Использование табличных функций.
Практические занятия
Использование запросов в блоках PL/pgSQL
Тема 3. Использование курсоров в PL/pgSQL
3.1 Введение в курсоры
Общие сведения о курсорах.
Объявление курсорных переменных.
Открытие курсора.
3.2 Работа с курсорами
Использование курсоров для обработки данных.
Операции с курсорами.
Обработка курсора в цикле
Практические занятия
Работа с курсорами
Тема 4. Динамическое построение запросов
4.1 Динамические запросы
Назначение и возможности динамических запросов.
Выполнение динамического запроса.
Конструкции динамических запросов
Практические занятия
Динамические запросы
Тема 5. Работа с массивами
5.1 Работа с массивами
Общие сведения о массивах.
Использование функций для обработки массивов.
Работа с массивами средствами PL/pgSQL.
Цикл по элементам массива
Практические занятия
Работа с массивами
Тема 6. Исключения: перехват ошибок
6.1 Сообщения и ошибки
Необходимость работы с исключениями.
Вывод сообщений и ошибок.
Перехват ошибок.
Журналирование ошибок.
Уровни обработки ошибок
Практические занятия
Работа с исключениями
Тема 7. Использование триггеров
7.1 Триггеры при изменении данных
Общие сведения о триггерах.
Функции-обработчики триггеров.