Драфт курса.
Старт ориентировочно 15 марта 2025 года.
Цель курса: помочь участникам понять различия между стандартным SQL и процедурным языком PL/pgSQL, а также научиться эффективно использовать оба инструмента для решения задач в PostgreSQL. Курс направлен на развитие навыков работы с базами данных, включая написание запросов, создание хранимых процедур, функций и триггеров, а также оптимизацию производительности.
Целевая аудитория: разработчики баз данных, аналитики данных, системные администраторы.
Формат: онлайн-лекции
Продолжительность одной лекции: до 2 часов, количество тем, которые будут разбираться за одну лекцию зависит от скорости прохождения материала (ориентировочно по 3 темы).
Курс рассчитан на 7-10 лекций, исходя из плана на 31 тему.
Оплата: 9500Р
Запись занятий и все материалы будут доступны на Яндекс-диске.
Итоговые навыки:
- Умение эффективно использовать SQL для работы с данными.
- Навыки создания и оптимизации хранимых процедур и функций на PL/pgSQL.
- Понимание, когда и как применять SQL или PL/pgSQL для решения задач.
- Способность разрабатывать производительные и надежные решения для работы с PostgreSQL.
План:
01. Серверное программирование в PostgreSQL. Назначение и основные особенности
02. Структура функции
03. Различие SQL, PL/pgSQL, PL/Python
04. Варианты возврата параметров из функции
05. Переменные, приоритеты и основные типы данных
06. Понятие блока и тела функции
07. Операторы ветвления if & case
08. Переменная типа record
09. Использование команды SELECT INTO
10. Возвращение множеств (setof) и таблиц (table)
11. Категории изменчивости функций
12. Использование операторов
13. Составные типы данных и вычисляемые поля
14. Использование входных и выходных параметров, передача массива
15. Использование кортежей
16. Перегрузка функций
17. Полиморфизм функций
18. Процедуры
19. Анонимные процедуры
20. Транзакции в серверном программировании
21. Использование search_path
22. SQL инъекции
23. Динамический SQL
24. Циклы
25. Исключения
26. Обработка ошибок
27. Функции для работы с массивами, в т.ч. многомерными
28. DML триггеры
29. DDL триггеры
30. Курсоры
31. Production cases
Добавить комментарий