
- •1. 1)Общие сведения о бд и субд
- •2) Основные функции субд
- •4) Уровни представления данных в субд
- •3) Обобщенная архитектура субд
- •5) Sql: история, стандарты
- •6) Языки баз данных
- •7) Язык qbe
- •8) Функциональная зависимость и нормализация отношений
- •9) Использование функций агрегирования в построении запросов
- •10) Модели данных
- •11) Форматирование результатов запросов
- •12) Иерархическая модель
- •13) Ограничения целостности
- •14) Сетевая модель
- •15) Создание, изменение и удаление таблиц средствами sql
- •16) Реляционная модель
- •17) Sql server. Характеристика объектов бд
- •18) Структура реляционных данных
- •19) Системные базы данных
- •1. Отношения: определение, свойства.
- •20) Создание бд в sql server
- •21.Реляционные ключи.
- •22.Основные типы данных.
- •23.Реляционная целостность.
- •24.Индексы: типы, назначение, создание.
- •25.Реляционные языки.
- •26.Подключение бд к sql server.
- •27.Связанные запросы.
- •28.Этапы обработки запросов.
- •29.Поддержка основных правил целостности данных.
- •30.Основные этапы проектирования баз данных.
- •31.Sql server. Характеристика объектов бд.
- •32.Вторая нормальная форма
- •33.Реляционная алгебра. (Унарные операции).
- •34.Концептуальное проектирование.
- •35.Управление транзакциями
- •36.Основные операции реляционной алгебры.
- •37.Обзор процесса нормализации.
- •38.Методология физического проектирования реляционных баз данных.
- •39.Методология концептуального проектирования.
- •40.Методология логического проектирования.
- •41.Обновляемые представления
- •42.Концепция er-модели.
- •43.Представления. Изменение значений с помощью представлений.
- •44.Избыточность данных и аномалии обновления.
- •45. Структура современной субд на примере Microsoft sql Server.
- •46.Защита баз данных.
- •47.Оптимизация запросов.
- •48.Эвристические правила преобразования операций реляционной алгебры.
- •49.Уровни представления данных в субд.
- •50.Подсистема типичной обработки транзакций.
36.Основные операции реляционной алгебры.
Объединение
Отношение с тем же заголовком, что и у совместимых по типу отношений A и B, и телом, состоящим из кортежей, принадлежащих или A, или B, или обоим отношениям.
Синтаксис:
A UNION B
Вычитание
Отношение с тем же заголовком, что и у совместимых по типу отношений A и B, и телом, состоящим из кортежей, принадлежащих отношению A и не принадлежащих отношению B.
Синтаксис:
A MINUS B
Декартово произведение
Отношение (A1, A2, …, Am, B1, B2, …, Bm), заголовок которого является сцеплением заголовков отношений A(A1, A2, …, Am) и B(B1, B2, …, Bm), а тело состоит из кортежей, являющихся сцеплением кортежей отношений A и B:
(a1, a2, …, am, b1, b2, …, bm) таких, что
(a1, a2, …, am)∈ A,
(b1, b2, …, bm)∈ B.
Синтаксис:
A TIMES B
Выборка (ограничение)
Отношение с тем же заголовком, что и у отношения A, и телом, состоящим из кортежей, значения атрибутов которых при подстановке в условие c дают значение ИСТИНА. c представляет собой логическое выражение, в которое могут входить атрибуты отношения A и/или скалярные выражения.
Синтаксис:
A WHERE c
Проекция (реляционная алгебра)
Отношение с заголовком (X, Y, …, Z) и телом, содержащим множество кортежей вида (x, y, …, z), таких, для которых в отношении A найдутся кортежи со значением атрибута X равным x, значением атрибута Y равным y, …, значением атрибута Z равным z. При выполнении проекции выделяется «вертикальная» вырезка отношения-операнда с естественным уничтожением потенциально возникающих кортежей-дубликатов.
Синтаксис:
A[X, Y, …, Z] или PROJECT A {x, y, …, z}
37.Обзор процесса нормализации.
Рассмотрим пример ненормализованных отношений, приводимых к НФБК.
Ненорм. отношения создаются на основе анализа предметной области и требований пользователей, которые предъявляется к данным.
>: Компания выполняет операции с объектами недвижимости по поручению владельца. Как часть этой деятельности, предусматривается проверка объекта недвижимости. Эту проверку выполняют сотрудники компании. Для проведения проверки сотрудникам предоставляется АВТО. В течение дня 1 авто может предоставлятся разным сотрудникам. Каждый сотрудник может выполнять в день проверку нескольких объектов недвижимости. Каждый объект в день может проверятся только 1 раз.
Ненормализованное отношение = Property_Inspection
Потенц. ключ: (Property_No, IDate)
(Staff_No, IDate, ITime)
(Car_Reg, IDate, ITime)
Преобразование к 1НФ будет выполнятся добавлением новой строки в отношение, то есть данные об объекте PG4 будут представлены 3-мя строками в таблице, PG16 – 2-мя. Проанализировав отношение 1НФ, сделаем вывод, что оно содержит избыточные данные, оно подвержено аномалиям обновления. Поэтому необходимо это отношение преобразовать ко 2НФ.
Функциональные зависимости:
fd1: Property_No, IDate ITime, Comment, Staff_No, Sname, Car_Reg–превичн. ключ.
fd2: Property_No PAdress – частичная зависимость.
fd3: Staff_No Sname – транзитивная зависимость.
fd4: Staff_No, IDate Car_Reg – полная зав-ть.
fd5: Car_Reg, IDate, ITime Property_No, PAdress, Comment, Staff_No, Sname – полная зав-ть для потенциального ключа.
fd6: Staff_No, IDate, ITime Property_No, PAdress, Comment, Staff_No, Sname
Приведение ко 2 НФ – устанавливает частичные зависимости.
Это выполн. создание 2-х новых отношений:
Prop(Property_No, PAdress)
Prop_Inspection ( Property_No, IDate, ITime, Comment, Staff_No, Sname, Car_Reg)
Приведение к 3 НФ – устанавливает транзитивную зависимость.
Чтобы установить транзитивную зависимость (fd3) необходимо зависимые атрибуты вместе с копией детерминанта переносить в новое отношение. Prop_Inspection преобразовывается в отношение:
Staff (Staff_No, Sname)
Prop_Inspection (Property_No, IDate, ITime, Comment, Staff_No, Sname, Car_Reg)
Проанализировав полученные отношения на предмет удовлетворения НФБК. Отношение находится в этой форме, если кажд. детермин. отнош. явл. потенциальным ключом. Преобразуем к НФБК: первых 2 удовлетворяет так как каждый детерминант является потенциальным ключом.
Аналогично 3-е отношение:
Property_No, IDate ITime, Comment, Staff_No, Sname, Car_Reg
Staff_No, IDate Car_Reg
Staff_No, IDate, ITime Property_No, Comment
Анализируем 2-ю функциональную зависимость. Детермин. отнош. не явл. потенц. ключом, т.е. отнош. будет страдать аномал. обновл.. Например, изменился № авто, необходимо будет вносить изменения сразу в нескольких строчках отнош., иначе данные будут противоречивыми. Поэтому отношение Prop_Inspection разбивается на 2 новых отношения, это отношение:
Сar(Staff_No, IDate, Car_Reg)
Inspection (Property_No, IDate, ITime, Comment, Staff_No)
Эти отношения удовлетворяют НФБК.
При нормализации отношений мы пользовались декомпозиц. отношениям без потерь(неаддитивной композиции). НФБК позволяет установить аномалии, которые вызваны fd. Помимо fd, в ходе аномалий выявлен еще 1 тип зависимости – многозначная зависимость.