Программа курса Базы данных.
Лекции читает Кулигин Леонид Евгеньевич, место проведения: Тимирязевский корпус МФТИ, аудитория №9244, с 16:55 - 18:20.
- 10/02
Обзор курса. Актуальность изучения SQL и баз данных.
Базы данных. Модель данных. СУБД. SQL.
Семинар: Запустить SQL Server management studio, создать базу данных и таблички в ней, добавить туда данные «руками», написать первый SELECT
- 17/02
Конструкция SELECT. Предикаты. Предложение WHERE.
Семинар: Писать запросы на SELECT.
- 24/02
Групповые операции. Предложение GROUP BY.
Подзапросы.
Семинар: Писать запросы с группировкой.
- 03/03 Реляционная модель данных. Типы данных и домены. Кортежи, отношения. Первая нормальная форма.
Предметная область, сущность, атрибуты.
Семинар: Тренироваться писать сложные запросы.
- 17/03
Реляционная алгебра. Основные операции. Декартово произведение. Отбор. JOINы. Бинарные реляционные операции.
Семинар: Писать запросы на SELECT к нескольким таблицам.
- 24/03. Функциональная зависимость. Ограничения целостности. Потенциальный и первичный ключ. 2НФ и 3НФ.
Семинар: Нормальные формы, ограничения целостности.
- 31/03. Guest lecture.
Проблемы нормализации на практике. Быстродействие и отказоустойчивость.
Семинар: Письменная контрольная работа.
- 07/04
NULL-значения. Трёхзначная логика. Особенности работы с NULLами.
Подзапросы.
Работа со строками. Работа с датами. Конструкция CASE.
Семинар: Разбор контрольной. Пишем запросы с NULLами, работаем со строками и датами.
- 14/04.
INSERT, UPDATE, DELETE. Операторы DDL.
Транзакции. Требования ACID. Эффект параллелизма. Уровни изоляции. Блокировки.
Семинар: Запросы DDL.
- 21/04
Дополнительные возможности SQL. Курсоры, работа с деревьями, PARTITION BY, XML. Метаданные SQL Server и работа с ними.
Семинар: Работа с курсорами.
- 28/04. Guest lecture.
Вопросы быстродействия. Планы выполнения запросов и возможности их ускорения. DBA.
Семинар: Финальная контрольная работа.
- 05/05
Реляционные СУБД: что дальше. Map-Reduce. Несколько слов о BI.
Семинар: Разбор контрольной. Продвинутые возможности T-SQL.