Бакалавриат
2021/2022
Язык SQL
Лучший по критерию «Полезность курса для Вашей будущей карьеры»
Статус:
Курс по выбору (Прикладная математика и информатика)
Направление:
01.03.02. Прикладная математика и информатика
Где читается:
Факультет компьютерных наук
Когда читается:
3-й курс, 1, 2 модуль
Формат изучения:
без онлайн-курса
Охват аудитории:
для всех кампусов НИУ ВШЭ
Преподаватели:
Моргунов Евгений Павлович
Язык:
русский
Кредиты:
5
Контактные часы:
60
Программа дисциплины
Аннотация
Курс «Язык SQL» создан по инициативе и при поддержке компании «Постгрес Профессиональный» https://postgrespro.ru/. Курс построен на основе учебника, выпущенного в издательстве «БХВ- Петербург»: Моргунов, Е. П. PostgreSQL. Основы языка SQL : учеб. пособие / Е. П. Моргунов ; под ред. Е. В. Рогова, П. В. Лузанова. – СПб. : БХВ-Петербург, 2018. – 336 с. : ил. – ISBN 978-5-9775-4022-3. Электронное издание учебника, а также слайды презентаций и видеозаписи лекций свободно доступны по ссылкам на сайте компании «Постгрес Профессиональный» https://edu.postgrespro.ru/sql_primer.pdf, https://postgrespro.ru/education/university/sqlprimer В настоящее время идет работа над второй – продвинутой – частью учебника. Материалы из нее также будут использоваться в преподавании дисциплины. Предлагаемый курс имеет ряд особенностей. 1. Курс является практическим. Это означает, что он не дублирует курс «Теория баз данных». Он предназначен, в первую очередь, для более глубокого изучения языка SQL. 2. Для изучения курса «Язык SQL» не требуется обязательного предварительного знакомства с базами данных. В рамках этого курса вы сможете получить все минимально необходимые знания основ теории баз данных, которые нужны для полноценного освоения языка SQL. 3. Используется учебная база данных «Авиаперевозки», разработанная специалистами компании «Постгрес Профессиональный». Она содержит большой объем правдоподобных данных, с которыми интересно работать. 4. Будут рассмотрены не только методы построения запросов, но и такие важные темы, как транзакции, основы оптимизации запросов и основы программирования на стороне сервера баз данных. 5. Язык SQL изучается в среде свободной СУБД PostgreSQL. Эта СУБД становится все более популярной в настоящее время. 6. Для занятий подготовлены виртуальные машины с операционной системой Linux, в которой уже установлена СУБД PostgreSQL. Поэтому от студентов не потребуется больших усилий для создания рабочей среды на своих компьютерах. 7. Студенты получат от преподавателя всю необходимую помощь для быстрого вхождения в работу. 8. Дисциплина проводится в дистанционном формате с использованием технологий компании Zoom (https://zoom.us/) и других электронных технологий. Экзамен заключается в защите финальной работы, которую студент готовит заранее в течение семестра.
Цель освоения дисциплины
- Получение студентами углубленных знаний языка SQL в среде СУБД с открытым программным кодом PostgreSQL и с учетом ее специфики.
Планируемые результаты обучения
- владеть базовыми навыками оптимизации запросов к серверу баз данных
- владеть базовыми навыками программирования на стороне сервера на языках SQL и PL/pgSQL
- знать назначение хранимых процедур и функций
- знать основные понятия теории баз данных и владеть основами проектирования баз данных
- знать правила построения запросов к базе данных, различные виды соединений таблиц, различные виды подзапросов, общие табличные выражения
- знать принципы организации совместной работы транзакций с учетом специфики конкретных уровней изоляции и ее реализации в СУБД PostgreSQL
- знать типы данных СУБД PostgreSQL и уметь использовать их на практике
- уметь использовать возможности СУБД PostgreSQL по работе со слабоструктурированными данными
- уметь использовать полнотекстовый поиск
- уметь создавать различные объекты базы данных (таблицы, представления, индексы)
Содержание учебной дисциплины
- Элементы теории баз данных
- Введение в язык SQL
- Типы данных СУБД PostgreSQL
- Основы языка определения данных
- Запросы
- Изменение данных
- Индексы
- Транзакции
- Повышение производительности
- Программирование на стороне сервера (язык PL/pgSQL)
- Полнотекстовый поиск
Элементы контроля
- Домашнее задание 1
- Домашнее задание 2
- Домашнее задание 3
- Домашнее задание 4
- Домашнее задание 5
- Домашнее задание 6
- Домашнее задание 7
- Домашнее задание 8
- Домашнее задание 9
- Домашнее задание 10
- Домашнее задание 11
- ЭкзаменЭкзамен проходит устно. Он может проводиться как в аудитории (желательно), так и дистанционно (допустимо). Экзамену предшествует домашняя часть работы, состоящая в подготовке экзаменационного задания, которое по сути является микропроектом, предполагающим разработку базы данных для предметной области, выбранной студентом, разработку запросов, функций, триггеров. Непосредственно на экзамене студент защищает выполненную экзаменационную работу и отвечает на сопутствующие теоретические вопросы. Студент на экзамене должен обосновать свои решения, принятые в финальной домашней работе, он должен показать умение писать SQL-запросы и интерпретировать их результаты. На экзамене разрешается пользоваться технической документацией на СУБД PostgreSQL. Время на подготовку студента -- не более 1 часа, продолжительность беседы с преподавателем -- 10-15 минут. Проведение экзамена в описанной форме позволяет проверить умение студентов не только выполнять упражнения из учебника, но и мыслить самостоятельно. Выполнение экзаменационной работы дома позволяет студенту сделать работу более масштабную и интересную.
Промежуточная аттестация
- 2021/2022 учебный год 2 модуль0.05 * Домашнее задание 1 + 0.05 * Домашнее задание 3 + 0.05 * Домашнее задание 8 + 0.1 * Домашнее задание 10 + 0.05 * Домашнее задание 4 + 0.03 * Домашнее задание 11 + 0.06 * Домашнее задание 9 + 0.12 * Домашнее задание 5 + 0.4 * Экзамен + 0.03 * Домашнее задание 6 + 0.03 * Домашнее задание 2 + 0.03 * Домашнее задание 7
Список литературы
Рекомендуемая основная литература
- Джуба, С. Изучаем PostgreSQL 10 / С. Джуба, А. Волков. — Москва : ДМК Пресс, 2019. — 400 с. — ISBN 978-5-97060-643-8. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/116125 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.
- Новиков Б.А. - Основы технологий баз данных - Издательство "ДМК Пресс" - 2019 - 240с. - ISBN: 978-5-94074-820-5 - Текст электронный // ЭБС ЛАНЬ - URL: https://e.lanbook.com/book/123699
Рекомендуемая дополнительная литература
- СУБД: язык SQL в примерах и задачах : учебное пособие / И. Ф. Астахова, В. М. Мельников, А. П. Толстобров, В. В. Фертиков. — Москва : ФИЗМАТЛИТ, 2009. — 168 с. — ISBN 978-5-9221-0816-4. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/2101 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.