Основы реляционных баз данных на примере PostgreSQL
31 видеоурок + 23 задания
учебный чат
старт в любое время
Удостоверение ИТМО
Практико-ориентированный курс, дающий твердую базу в области работы с реляционными базами данных и универсальной системой PostgreSQL
Основы проектирования реляционных баз данных, управление / модификация
Навыки нормализации структуры данных, обеспечение ссылочной целостности
Навыки использования транзакций и оптимизации запросов через индексы
Агрегатные функции, соединения, подзапросы и резервное копирование
Основы работы с PostgreSQL, установка на Windows, утилиты psql и pgAdmin
Профессия разработчика / программиста по-прежнему не покидает верхних строчек рейтингов самых перспективных и высокооплачиваемых — как в России, так и во всем мире. Рынок технологий непрерывно развивается, и IT-специалисты требуются всегда
Вы сможете существенно углубить свои знания по реляционным БД всего за 1.5-2 месяца и закрепить их с помощью продуманных заданий из реальной IT-практики. Начнете формировать компетенции, которые помогут стартовать в разработке
Начинающему разработчику
Вы получите оптимальный объем знаний по работе с базами данных, и уже во время обучения начнете применять их на практике с помощью PostgreSQL — одной из самых популярных СУБД, используемых при разработке мобильных и веб-приложений
Junior-программисту
Освоите ключевые концепции реляционных БД и навыки работы в PostgreSQL. Сможете эффективнее заниматься разработкой ПО и аналитикой данных, превращая новые знания в профессиональные скиллы за счет активной практики на курсе
Студенту IT-специальности
Начинающему разработчику
Junior-программисту
Вы сможете существенно углубить свои знания по реляционным БД всего за 1.5-2 месяца и закрепить их с помощью продуманных заданий из реальной IT-практики. Начнете формировать компетенции, которые помогут стартовать в разработке
Вы получите оптимальный объем знаний по работе с базами данных, и уже во время обучения начнете применять их на практике с помощью PostgreSQL — одной из самых популярных СУБД, используемых при разработке мобильных и веб-приложений
Освоите ключевые концепции реляционных БД и навыки работы в PostgreSQL. Сможете эффективнее заниматься разработкой ПО и аналитикой данных, превращая новые знания в профессиональные скиллы за счет активной практики на курсе
Таринская Татьяна Геннадьевна
Автор курса
Java-разработчик в компании Itigris. Опыт преподавания в школе Бруноям, опыт подготовки школьников к олимпиадам и ЕГЭ по информатике на подготовительных курсах ИТМО и в частном порядке как репетитор. Опыт преподавания Java и алгоритмов для желающих в Объединении ОЛИМП ИТМО. Автор курсов по Java-программированию, преподаватель Университета ИТМО.
Программа онлайн
курса
1
Тема 1. Вставка, модификация и удаление данных
Занятия:
Вставка данных (Insert)
Returning
Вставка множества строк
Вставка Null значения
Извлечение значения из одной таблицы и размещение его в другой таблице
Разбор примера. Если есть ограничение Unique
On Conflict Do Nothing/Do Update
Обновление данных (Update...Set)
Обнобвление всех значений в столбце. Удаление всех данных из таблицы
Демонстрация и разбор примеров
Задания:
Вставка и модификация данных
2
Тема 2. Резервное копирование
Резервное копирование и восстановление PostgreSQL
Дамп базы данных. Утилита pg_damp. Разбор примера в консоле
Скрипт или архив. Пример создания текстового скрипта
Демонстрация примера. Резервная копия таблиц
Утилита pg_dampall. Восстановление с помощью psql
Демонстрация примера. Восстановление БД с помощью pg_restore
Демонстрация примера. Создание резервной копии в pgAdmin
Демонстрация порядка действий
3
Тема 3. Хранимые процедуры
Определение
Отличие хранимых процедур от пользовательских функций
Создание и вызов хранимой процедуры
Демонстрация и разбор примера
Возврат значения через INOUT
Анонимные блоки
DROP PROCEDURE
4
Тема 4. Функции в PostgreSQL
Функции. Для чего нужны функции?
Синтаксис создания функции. Рассмотрение некоторых функций
На языке SQL
Символы $$
На процедурном языке. Процедурные расширения языка SQL
Вызов функции. Значения по умолчанию для параметров
Демонстрация примеров. Без имен для аргументов
Использование Returning. Функции с выходными параметрами
Без возврата значений. Объявление переменных
Демонстрация и разбор примеров
5
Тема 5. Индексы в PostgreSQL
Занятия:
Индексы. Без индексов
Инструкция Create Index
Типы индексов. Using <тип_индекса>
Составные индексы. Оптимизатор запросов не использует индекс. Разбор примера
Уникальный индекс
Селективность. Частичный индекс
Демонстрация и разбор примеров
Задания:
Работа с индексами
6
Тема 6. Представления в PostgreSQL
Занятия:
Представления. Типы таблиц. Views
Для чего нужны? Создание представления
Create Or Replace View
Создание представления в pgAdmin
Изменение и удаление представления
Материализованное представление
Создание материализованного представления
Сравнение с обычным представлением
Демонстрация примеров
Задания:
Работа с представлениями
7
Тема 7. Условные выражения
Занятия:
Выражение Case. Принцип работы оператора Case
Пример без Else. Демонстрация примера
Пример с Else. Демонстрация примера
Группировка и Case. Разбор примера
Case внутри агрегаций
Задания:
Условные выражения
8
Тема 8. Пагинация результатов запроса
Занятия:
Limit Fetch Offset. Limit
Offset. Limit с Offset
Fetch. Offset...Fetch
Разбор примеров
Задания:
Использование операторов LIMIT, OFFSET и FETCH
9
Тема 9. Подзапросы в PostgreSQL
Занятия:
Для чего подзапросы
Подзапросы (subqueries) и особенности
Где можно использовать в Select
Типы подзапросов. Пример скалярного подзапроса
Пример простого подзапроса. Пример коррелированного подзапроса
Выражения табличных подзапросов
Exists/Not Exists. In/Not In. Any/Some. Al
Разбор и демонстрация примеров
Задания:
Использование подзапросов
10
Тема 10. Объединение, пересечение и разность наборов данных
Занятия:
Объединение, пересечение и разность наборов данных
Разбор задачи. Оператор Union. Разбор примера
Union All. Разбор примера
Необходимые условия для операторов Union и Union All
Демонстрация примера. Разные имена полей
Оператор Intersect. Оператор Except
Демонстрация примера. С применением условий
Задания:
Объединение, пересечение и разность наборов данных