- •Классификация субд [5]
- •Функции субд
- •Централизованная архитектура
- •Технология с сетью и файловым сервером (архитектура «файл-сервер»)
- •Технология «клиент-сервер»
- •Трехзвенная (трехуровневая) архитектура
- •Реляционная модель данных
- •Методология idef1x
- •Определение отношения, домена, кортежа, реляционной базы данных, ключей
- •Связи между отношениями (таблицами)
- •Базовые теоретико-множественные операции реляционной алгебры
- •Специальные операции реляционной алгебры
- •Аномалии обновления
- •Первая Нормальная Форма
- •Определение функциональной зависимости
- •Функциональные зависимости отношений и математическое понятие функциональной зависимости
- •Вторая Нормальная Форма
- •Определение
- •3Нф (Третья Нормальная Форма)
- •Алгоритм нормализации (приведение к 3нф)
- •Реляционная модель данных: сравнение нормализованных и ненормализованных моделей.
- •16, Сравнение нормализованных и ненормализованных моделей
- •Null-значения
- •Потенциальные ключи
- •Целостность сущностей
- •Внешние ключи
- •Целостность внешних ключей
- •Замечания к правилам целостности сущностей и внешних ключей
- •Операции, которые могут нарушить ссылочную целостность
- •Для родительского отношения
- •Для дочернего отношения
- •20, Целостность реляционных данных: стратегии поддержания ссылочной целостности.
- •Стратегии поддержания ссылочной целостности
- •Операторы ddl (Data Definition Language) - операторы определения объектов базы данных
- •Create table – создать таблицу
- •Оператор check
- •Определение первичных и альтернативных ключей с помощью оператора alter
- •Операторы drop
- •Выборка данных
- •Сортировка результатов
- •Встроенные функции sql
- •Средства модификации данных языка sql
- •Вставка данных – insert
- •Изменение данных – update
- •Удаление данных – delete
- •Выборка данных
- •Представления
- •Применение представлений
- •Обновление представлений
- •Триггеры
- •Хранимые процедуры
- •Большая безопасность и меньший сетевой трафик.
- •Sql можно оптимизировать
- •Совместное использование кода:
- •Структура памяти эвм
- •Представление экземпляра логической записи
- •Организация обмена между оперативной и внешней памятью
- •Структуры хранения данных во внешней памяти эвм
- •Назначение и проверка полномочий, проверка подлинности
- •Средства защиты базы данных
- •Архитектура системы безопасности ms sql Server
- •34.Роли сервера
- •35, Права доступа
- •36, Необходимость в атомарных транзакциях
- •П , Параллельная обработка транзакций
- •Проблема потерянного обновления
- •Блокировка ресурсов
- •Блокировочная терминология
- •Сериализуемые транзакции
- •Взаимная блокировка
- •Оптимистическая и пессимистическая блокировки
- •Объявление характеристик блокировки
- •Свойства транзакций
- •Атомарность
- •Долговечность или устойчивость
- •Согласованность
- •Изолированность транзакции. Уровни изоляции
- •Типы курсоров
Специальные операции реляционной алгебры
Первой специальной операцией реляционной алгебры является селекция (выбор, горизонтальный выбор, операция фильтрации, операция ограничения отношений).
Селекция (выбор) – это операция создания нового отношения, включающего те кортежи исходного отношения, для которых истинно условие выбора или фильтрации.
Например, выбрать из R9 детали с шифром 003412:
R10 = R9[Шифр детали = «003412»].
R10 |
||
Шифр детали |
Название детали |
Цех |
003412 |
Гайка Ml |
Цех 1 |
003412 |
Гайка Ml |
Цех 2 |
Следующей специальной операцией является проекция.
Пусть R – отношение, Sr = (А1, А2,..., Аn) – схема отношения R.
Обозначим
через В подмножество {Аi}
– В
{Аi}.
Проекцией отношения R на набор атрибутов В, обозначаемой R[B], называется отношение со схемой, соответствующей набору атрибутов В SR[B] = В, содержащему кортежи, получаемые из кортежей исходного отношения R путем удаления из них значений, не принадлежащих атрибутам из набора В. Все дублирующие кортежи удаляются из результирующего отношения.
Проекцию называют иногда операцией вертикального выбора, позволяющей получить только требуемые характеристики моделируемого объекта. Чаще всего проекция используется как промежуточный шаг в операциях горизонтального выбора или фильтрации. Кроме того, она используется самостоятельно на заключительном этапе получения ответа на запрос.
Например, выберем все цеха, которые изготавливают деталь «Гайка Ml». Воспользуемся отношением R10, полученным при реализации операции выбора и выполним проекцию на столбец «Цех». Результатом выполнения этих операций будет отношение R11: R11 = R10[Цex].
R11 |
Цех |
Цех 1 |
Цех 2 |
Следующей специальной операцией реляционной алгебры является операция соединения.
В отличие от рассмотренных специальных операций реляционной алгебры: выбора и проекции, которые являются унарными, то есть производятся над одним отношением, операция соединения является бинарной, то есть исходными для нее являются два отношения, а результатом – одно.
Пусть R = {r}, Q = {q} – исходные отношения, SR, SQ – схемы отношений R и Q соответственно.
SR = (A1, A2, ..., Ak); SQ = (B1, B2, ..., Bm), где Ai, Bj -– имена атрибутов в схеме отношений R и Q соответственно.
При этом полагаем, что заданы наборы атрибутов А и В: А {Ai} i=1,k; В {Bj} j=1,m, и эти наборы состоят из сравнимых атрибутов.
Тогда соединением отношений R и Q при условии β будет подмножество декартова произведения отношений R и Q, кортежи которого удовлетворяют условию β. Соединение обозначают следующим образом: R [β] Q.
Например, рассмотрим следующий запрос. Пусть отношение R12 содержит перечень деталей с указанием материалов, из которых эти детали изготавливаются:
|
|
|
|||||||||||||||||||||||||||||||||||||||
Получить перечень деталей, которые изготавливаются в «Цехе 1» из материала «сталь-ст2»:
R13 =
R12
[(R12.Шифр детали = R9.Шифр детали) ∩ R9.Цex = «Цех 1» ∩ R12.Материал = «сталь-ст2»]
R9[Название детали].
Важными с практической точки зрения частными случаями соединения являются эквисоединение и естественное соединение.
Операция эквисоединения характеризуется тем, что условие сравнения задает равенство операндов.
Операция естественного соединения применяется к двум отношениям, имеющим общий атрибут (простой или составной). Этот атрибут в отношениях имеет одно и то же имя (совокупность имен) и определен на одном и том же домене (доменах).
Последней специальной операцией реляционной алгебры является деление.
Результат деления отношения R с атрибутами А и В на отношение Q с атрибутом В, где А и В –простые или составные атрибуты, причем атрибут В – общий атрибут, определенный на одном и том же домене (множестве доменов составного атрибута), является отношение P с атрибутом А, состоящее из кортежей r таких, что в отношении R имеются кортежи (r,s), причем множество значений s включает множество значений атрибута В отношения Q.
Деление обозначают следующим образом: Р = R[A:B]Q
Например, пусть отношение R содержит сведения о том, что и в каких цехах выпускается, отношение Q – сведения о номенклатуре всех выпускаемых деталей. Требуется определить перечень цехов, в которых выпускается вся номенклатура деталей. Тогда решением этой задачи будет операция деления отношения R на отношение Q по набору атрибутов (Шифр детали, Наименование детали).
Р = R [Шифр детали, Наименование детали : Шифр детали, Наименование детали] Q.
R |
||
Шифр детали |
Наименование детали |
Цех |
003412 |
Гайка Ml |
Цех 1 |
003415 |
Гайка M2 |
Цех 1 |
003416 |
Гайка M3 |
Цех 1 |
003477 |
Болт M1 |
Цех 1 |
003412 |
Гайка Ml |
Цех 2 |
003415 |
Болт M1 |
Цех 2 |
Q |
|
Шифр детали |
Наименование детали |
003412 |
Гайка Ml |
003415 |
Гайка M2 |
003416 |
Гайка M3 |
003477 |
Болт M1 |
P |
Цех |
Цех 1 |
РЕЛЯЦИОННАЯ МОДЕЛЬ ДАННЫХ: АНОМАЛИИ ОБНОВЛЕНИЯ, НОРМАЛИЗАЦИЯ, ПЕРВАЯ НОРМАЛЬНАЯ ФОРМА.
