
- •1. Информация о дисциплине
- •1.1. Предисловие
- •Место дисциплины в учебном процессе
- •1.2. Содержание дисциплины и виды учебной работы Содержание дисциплины по гос
- •1.2.1. Объем дисциплины и виды учебной работы
- •1.2.2. Перечень видов практических занятий и контроля:
- •2. Рабочие учебные материалы
- •2.1. Рабочая программа (объем дисциплины 140 часов)
- •Раздел 1. Назначение и основные компоненты системы баз данных (12 часов)
- •1.1. Субд – основа информационных систем (8 часов)
- •1.2. Современные архитектуры ис (4 часа)
- •Раздел 2. Архитектура банка данных(20 часов)
- •2.1. Уровни представления баз данных (5 часов)
- •2.2. Категории пользователей банков данных (5 часов)
- •2.3. Концепции и этапы проектирования баз данных (10 часов)
- •Раздел 3. Модели и типы данных в бд (24 часа)
- •3.1. Представление концептуальной модели средствами субд (14 часов)
- •3.2. Типовые модели данных субд (10 часов)
- •Раздел 4. Базовые элементы реляционных бд (25 часов)
- •4.1. Проектирование реляционной базы данных (9 часов)
- •4.2. Нормализация отношений в бд (16 часов)
- •Раздел 5. Язык структурированных запросов sql (28 часов)
- •5.1. Язык манипулирования данными для реляционной модели (8 часов)
- •5.2. Реализация запросов в языке sql (20 часов)
- •Раздел 6. Использование баз данных (28 часов)
- •2.2. Тематические планы дисциплины
- •2.2.1. Тематический план дисциплины для студентов очной формы обучения
- •2.2.2. Тематический план дисциплины для студентов очно-заочной формы обучения
- •2.2.3. Тематический план дисциплины для студентов заочной формы обучения
- •2.3. Структурно-логическая схема дисциплины
- •2.4. Временной график изучения дисциплины
- •2.5. Практический блок Практические занятия (очная форма обучения)
- •Практические занятия (очно-заочная)
- •Практические занятия (заочная формы обучения)
- •Лабораторные работы (очная форма обучения)
- •Лабораторные работы (очно-заочная форма обучения)
- •Лабораторные работы (заочная форма обучения)
- •2.6. Балльно-рейтинговая система
- •3. Информационные ресурсы дисциплины
- •3.1. Библиографический список
- •3.2. Опорный конспект введение
- •Раздел 1. Назначение и основные компоненты системы баз данных
- •1.1. Субд – основа информационных систем
- •1.1.1. Эволюция развития систем управления данными
- •1.1.2. Локальная технология
- •1.1.3. Архитектура с сетью и файловым сервером
- •1.2. Современные архитектуры ис
- •1.2.1. Архитектура "клиент – сервер"
- •1.2.2. Трехзвенная архитектура "клиент – сервер"
- •1.2.3. Архитектура Intranet-приложений
- •Вопросы для самопроверки по теме 1.2
- •Раздел 2. Архитектура банка данных
- •2.1. Уровни представления баз данных
- •2.1.1. Основная терминология
- •2.1.2. Архитектура базы данных.
- •2.1.3. Процесс прохождения пользовательского запроса в субд
- •2.2. Категории пользователей банков данных
- •2.2.1. Классификация пользователей БнД
- •2.2.2. Основные функции группы администратора бд
- •2.3. Концепции и этапы проектирования баз данных
- •2.3.1. Жизненный цикл бд
- •2.3.2. Общая структура процесса проектирования бд
- •Раздел 3. Модели и типы данных в бд
- •3.1. Представление концептуальной модели средствами субд
- •3.1.1. Общие представления о моделях данных субд
- •3.1.2. Классификация моделей данных
- •3.2. Типовые модели данных субд
- •3.2.1. Иерархическая и сетевая модель данных
- •3.2.2. Реляционная и постреляционная модель данных
- •3.2.3. Многомерная модель данных
- •Раздел 4. Базовые элементы реляционных бд
- •4.1. Проектирование реляционной базы данных
- •4.1.1. Свойства и виды отношений
- •4.1.2. Реляционная алгебра
- •4.2. Нормализация отношений в бд
- •4.2.1. Понятие о нормальных формах
- •4.2.2. Формальные методы синтеза и декомпозиции нормальных форм
- •4.2.3. Проектирование с использованием метода сущность – связь
- •Раздел 5. Язык структурированных запросов sql
- •5.1. Язык манипулирования данными для реляционной модели
- •5.1.1. Назначение и история языка sql
- •5.1.2. Операторы языка sql
- •5.1.3. Модификация хранимых отношений в субд
- •5.2. Реализация запросов в языке sql
- •5.2.1. Примеры запросов
- •5.2.2. Агрегатные функции
- •5.2.3. Хранимые запросы
- •Области применения триггеров и хранимых процедур
- •Раздел 6. Использование бд
- •6.1. Программирование и управление транзакциями
- •6.1.1. Управление транзакциями в системах баз данных
- •6.1.2. Менеджеры транзакций
- •6.1.3. Параллельное выполнение транзакций
- •6.1.4. Методы сериализации транзакций.
- •6.1.5. Уровни изолированности пользователей.
- •6.2. Защита баз данных. Целостность и сохранность баз данных
- •6.2.1. Методы обеспечения безопасности
- •6.2.2. Программно-технический аспект информационной безопасности
- •6.2.3. Избирательное и мандатное управление доступом
- •6.3. Современные субд. Тенденции построения и использования баз данных
- •6.3.1. Объектная и реляционная технология
- •6.3.2. Объектно-реляционные субд
- •6.3.3. Критерии сравнения субд
- •Заключение
- •3.3 Глоссарий
- •3.4. Учебное пособие
- •3.5. Методические указания к выполнению лабораторных работ
- •3.5.1. Общие указания
- •3.6. Методические указания к выполнению практических занятий
- •3.6.1. Задания на практические занятия
- •3.6.2. Методические указания к выполнению практических заданий
- •4. Блок контроля освоения дисциплины
- •4.1. Общие указания
- •4.2. Задание на курсовой проект и методические указания к его выполнению
- •Тематика курсовых проектов
- •Рекомендуемые государственные стандарты
- •Пример оформления титульного листа
- •Задание на курсовой проект по дисциплине
- •4.3. Текущий контроль Тренировочные тесты Тест № 1 (по разделу 1)
- •8. Информационная система (ис) – это …
- •Тест №2 (по разделу 2)
- •Тест № 3 (по разделу 3)
- •8. При создании схемы таблицы бд следует описать:
- •Тест № 4 (по разделу 4)
- •Тест № 5 (по разделу 5)
- •Тест № 6 (по разделу 6)
- •3. Согласованность транзакции означает…
- •4. Изоляция транзакции означает…
- •5. Сохранность транзакции означает…
- •6. Транзакция продолжается до тех пор, пока не произойдет одно из следующих событий:
- •7. Оператор commit означает…
- •8. Оператор rollback означает…
- •Правильные ответы на тренировочные тесты
- •4.4. Итоговый контроль Вопросы для подготовки к экзамену
- •Приложение 1. Определение данных в sql.
- •Приложение 2. Журнализация изменений базы данных
- •Приложение 3. Система безопасности в субд
- •1. Информация о дисциплине 3
- •2. Рабочие учебные материалы 6
- •3. Информационные ресурсы дисциплины 23
- •4. Блок контроля освоения дисциплины 143
- •191186, Санкт-Петербург, ул. Миллионная, 5
Раздел 4. Базовые элементы реляционных бд
Четвертый раздел курса включает две темы: “Проектирование реляционной базы данных”, “Нормализация отношений в БД”. После изучения каждой темы Вам следует ответить на вопросы для самопроверки.
По материалам раздела также выполняется курсовой проект по дисциплине.
Работа с разделом 4 завершается сдачей контрольного теста. Кроме того, по данному разделу выполняются практические задания 3 и 4, а также лабораторные работы № 1 и № 2.
Для того, чтобы Вы смогли успешно ответить на вопросы контрольного теста, Вам предоставляется возможность поработать с репетиционным тестом. Если Вы испытываете затруднения в ответе на какой-либо вопрос, обратитесь к главам 5-7, 11-13 учебника [1] или к материалам электронного учебного пособия [7] и пособия [8].
4.1. Проектирование реляционной базы данных
При изучении данной темы Вы должны познакомиться с математическим аппаратом, применяемым для проектирования реляционных баз данных.
По данной теме выполняется лабораторная работа № 3, а также раздел “Концептуальное проектирование” курсового проекта. Рекомендации по выполнению этих заданий приведены в методических указаниях 3.4.
Для проверки изучения материала темы Вам предстоит также ответить на вопросы для самопроверки.
Если Вы испытываете затруднения в ответе на какой-либо вопрос, обратитесь к главам 11, 12 учебника [1] или к материалам учебного пособия [8, 9].
4.1.1. Свойства и виды отношений
Отношения
Пусть имеется n множеств {D1, D2,...,Dn}.
R есть отношение на этих множествах, если оно представляет собой множество элементов вида < d1, d2, . . . , dn > , где di Di (i = 1, . . n).
Более строго, R - это подмножество декартова произведения указанных множеств и формально записывается:
R D1 D2 ... Dn,
где - математический символ нестрогого включения;
- математический символ операции декартова произведения.
В исходные множества Di принято называть доменами (областями определения) R, а элементы R < d1, d2, ..., dn > - кортежами или выборками (на рис.3.5 раскрывается суть некоторых понятий, связанных с отношением R).
Будем считать, что элементы доменов элементарны, т.е. сами по себе они не есть множества. Элементарность подразумевает, что это некоторое неразделимое понятие предметной области, например идентификатор информационных объектов или число. Следует отметить также семантическую нагрузку понятия домена: данные считаются сравнимыми только в том случае, когда они относятся к одному домену. Например, значения доменов "Номера телефонов" и "Возраст" относятся к типу целых чисел, но не являются сравнимыми. Заметим, что в большинстве реляционных СУБД понятие домена или не используется, или используется лишь частично.
Так как отношение есть множество, а все элементы множества должны быть попарно различны, то в отношении не может быть двух идентичных кортежей.
Отношение обладает следующими свойствами:
Отношение имеет имя, отличающее его от других отношений.
Каждый атрибут имеет уникальное имя.
Значения атрибута берутся из одного и того же домена.
Каждый кортеж является уникальным, т.е. в отношении не может быть дублированных строк.
Атрибут (или набор атрибутов), уникально идентифицирующий каждый кортеж, является первичным (primary) ключом отношения.
Атрибут (или множество атрибутов) называется внешним (foreign) ключом, если в другом отношении он является первичным.
Идентификатор отношения и множество имен атрибутов составляют схему отношения. Введенное понятие схемы будет формально определено при рассмотрении вопросов, касающихся теории нормализации.
Содержимое отношения (см. рис. 3.5) принято называть состоянием схемы и обозначать r. Совокупность схем отношений составляют схему базы данных. Соответственно состояние схемы базы данных (собственно сама база) - есть совокупность состояний схем отношений.
Примем следующие обозначения. Будем обозначать первыми заглавными латинскими буквами (A, B, ...) имена атрибутов, буквами R, Q – схемы атрибутов, строчными первыми (a, b, ...) – атрибуты, строчными r, q – состояние отношения. Схему R={A1, A2, ..., An} будем обозначать R[A1, A2, ..., An] или A1A2...An , отношение r со схемой R обозначим r(R) или r(A1A2...An).
Значение кортежа t на атрибуте A будем называть A-значением кортежа t. Если XR, будем называть t(X) X-значением кортежа t. Предполагается, что существует значение : t()= для каждого кортежа t, t1()=t2().
Ассоциации между отношениями и внутри отношений коротко рассмотрены в теме 3.1.1.