Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Операции реляционной алгебры.
Т.к. отношение – это множество, то к нему применяются операции над множествами. Введем отношения одной арности R и S. Они заданы с какими-то схемами: R(), S(). 1) ; 2) ; 3) \ ; 4) R – арность n1 S – арность n2 ; 5) операция селекции (выбора) – унарная операция над отношениями. Результатом ее применения к отношению является другое отношение, которое представляет собой подмножество кортежей отношения . ; F – формула, в которую входит атрибут, логические связки , константы, арифметические операторы сравнения , а также могут быть использованы скобки. Пример: Студент(ФИО; год рождения; группа; № зач. книжки) A1 A2 A3 A4 A3 = 644 & A2 = 1979 Свойства селекции: 1. операторы выбора коммутативны относительно операции композиции: , где – отношение со схемой . Т.к. порядок выбора не важен, то может быть записано как: ( не обязательно различны). Доказательство:
2. оператор выбора дистрибутивен относительно бинарных булевых операций: Доказательство: 3. Выбор и дополнение не коммутируются. 6) Проекция – унарная операция на отношении. Определим ее. Пусть – отношение со схемой и – подмножество из . Проекция на , записанная как есть отношение , полученное вычеркиванием столбцов, соответствующих атрибутам в , и исключением из оставшегося отношения повторяющихся строк. ; Пример: ( студент ) ( студент )) Свойства: 1. Операции проекции и выбора коммутативны, если атрибуты, на которые проводится операция выбора, принадлежат множеству атрибутов, на которые осуществляется проекция. Если , и – отношение со схемой , то: . Доказательство:
2. Если две проекции выполняются последовательно и вторая из них – собственная, то она поглощает первую: если применимо к , то результат будет тем же самым, как при применении непосредственно к , если первоначальное применение было собственным. . 3. Связь между проекцией и булевскими операциями: . 7) Соединение – бинарный оператор для комбинирования двух отношений. Пусть заданы отношение со схемой , арности , и отношение со схемой , арности : 1. Если декартово произведение (). 2. операция соединения по общим атрибутам (естественное соединение; ) Пример: R( A B C ) S( B C D ) ( A B C D ) a b c b c d a b c d d b c b c e a b c e b b f a d b d b c d c a d d b c e c a d b Свойства соединения (естественного):
1. Операцию соединения можно использовать для определения операции выбора. 2. Операция соединения коммутативна и ассоциативна: 3. Операции соединения и проекции образуют дополняющие друг друга функции, хотя и не являются взаимно-обратными. 4. Операция соединения дистрибутивна относительно операции объединения: . Пример: R( A B C ) S( D E ) ( A B C D E ) a1 b1 c1 d1 e1 a1 b1 c1 d1 e1 a1 b2 c2 d2 e2 a1 b1 c1 d2 e2 a2 b1 c2 a1 b2 c2 d1 e1 a1 b2 c2 d2 e2 a2 b1 c2 d1 e1 a2 b1 c2 d2 e2 5. Операция Θ – соединения. Пусть и – два отношения со схемами , , для которых , и пусть и -сравнимы ( - арифметический оператор сравнения: ). Тогда для и для таких, что является комбинацией кортежей и при условии и . – арность отношения . Пример: R( A B C ) S( D E ) ( A B C D E ) a1 b1 c1 a1 e1 a1 b1 c1 a1 e1 a1 b2 c2 a2 e2 a1 b2 c2 a1 e1 a2 b1 c2 Если в операции Θ – соединения присутствует знак “=”, то операцию называют эквисоединением. Если присутствуют другие операции – это Θ – соединение. Свойства эквисоединения: 1. а) Пусть для отношения надо найти . Определим новое отношение с единственным кортежем таким, что . Тогда есть то же самое, что : такие, что и . б) Используя соединения можно сконструировать обобщенную операцию выбора. Введем отношение с кортежами , где и . Тогда . в) Если выбрать 2 атрибута и из и взять в качестве отношение с единственным кортежем таким, что и , то . 2. Оператор соединения коммутативен и ассоциативен: . 3. Пусть и – отношения. со схемой . Пусть , . 4. и , при этом лежит в или , а . Если , то . Если , то . Тем самым показано, что . Докажем . Выберем или . В обоих случаях .
8) Дополнение отношения R со схемой R() можно определить как разность , dom(R) – это отношение, состоящее из кортежей декартова произведения доменов отношения R. Пример: R( A B C ) dom(R)( A B C ) ( A B C ) a1 b1 c1 a1 b1 c1 a1 b2 c1 a1 b2 c2 a1 b2 c1 a1 b3 c1 a2 b2 c2 a1 b3 c1 ……… ……… a2 b3 c2 a2 b3 c2 Однако, если какой-либо атрибут Ai имеет бесконечный домен, также будет бесконечным и не будет отношением в обычном понимании. Модифицированная версия дополнения, называемая активным дополнением отношения, всегда дает отношение. Определим его. Если – отношение, и , то активным доменом Ai относительно R называется множество .
Пусть – множество всех кортежей надатрибутами из и их активными доменами относительно . Активным дополнением является . Пример: R( A B C ) adom(R)( A B C ) a1 b1 c1 a1 b1 c1 a1 b2 c2 a1 b2 c1 a2 b2 c2 a1 b1 c2 a1 b2 c2 В действительности, трудно себе представить ситуацию, где бы дополнение отношения полностью имело бы смысл, за исключением быть может унарного отношения (отношения с одним атрибутом). Активное дополнение может возникнуть естественно. 9) Операция деления. Пусть и отношения арности и соответственно, и . Тогда есть множество кортежей длины таких, что для любых кортежей : : Пример: R( A B ) S( B ) T( B ) ( A ) ( A ) a1 b1 b1 b1 a1 a1 a1 b2 b2 a3 a2 a1 b3 b3 a3 a2 b1 a2 b2 a3 b1 a3 b2 a3 b3
10) Операция переименования. Пусть задано отношение , является атрибутом отношения , а не является атрибутом . Тогда отношение с , переименованным в , обозначенное есть отношение: . и должны иметь один и тот же домен. Одновременное переименование: Пусть имеем отношение ; – различные атрибуты, принадлежащие , а – различные атрибуты, не принадлежащие , причем . Обозначим одновременное переименование атрибутов в соответственно в отношении как . Замечание: Одновременное переименование атрибутов не всегда можно представить в виде последовательности переименований отдельных атрибутов: . В этом случае нужно вводить дополнительный атрибутный символ.
РЕЛЯЦИОННАЯ АЛГЕБРА. Реляционную алгебру определим как: РА=<U, D, F, Rсх, O>, где U – множество всех возможных атрибутов, называемое универсумом; D – множество доменов; F: U → D; Rсх – множество всех возможных схем отношений, заданных на данном множестве атрибутов; О – множество операций, заданных на отношениях со схемами из Rсх: ↓ РА с операцией дополнения. Операции РА определил Кодд (за исключением операции переименования). Min OРА< O, т.к. можем определить через другие операции. Цель РА – описать выражение для получения нового отношения (это выражение РА). Выражением РА называется любое выражение, правильно построенное (согласующееся с ограничениями, наложенными на операторы) из отношений, использующих операторы из О. В выражении могут быть круглые скобки, именно они определяют порядок выполнения операций, т.к. все операции, за исключением , равноправны. Отсюда следует свойство замкнутости: т.к. результатом каждой реляционной операции является одно отношение, то каждое выражение РА определяет функцию, которая отображает множество отношений, входящих в выражение РА, в одно отношение. Схема полученного отношения будет зависеть от схем множества отношений, составляющих алгебру выражения . – схема алгебраического выражения . Схему алгебраического выражения можно определить рекурсивно: 1. Если выражение Е состоит из одного отношения Ri, то ; 2. Если выражение , где – некоторое множество условий, то ; 3. Если , то ; 4. Если , то ; 5. Если , то ; 6. Если , то .
Реляционная алгебра с дополнением: если к множеству операций О добавить дополнение. Алгебраические выражения, содержащие дополнение, отображают множество отношений в бесконечное отношение. Восемь операторов Кодда не представляют минимального набора операторов, т.к. не все из них примитивны. Например, естественное соединение – это проекция выборки декартового произведения. Фактически 3 операции из этого набора (соединение, пересечение, деление) можно определить через оставшиеся 5. Следовательно, эти 5 операций можно рассматривать как примитивные и составляющие минимальный набор.
РА представляет собой в явном виде набор операций, которые можно использовать, чтобы сообщить системе, как в БД из заданных отношений реально построить новое отношение. РИ представляет собой систему обозначений для определения нового отношения в терминах данных отношений.
Возможные применения выражений РА: 1) определение области выборки, т.е. определение данных для их выбора как результата операции выборки; 2) определение области обновления, т.е. определение данных для их вставки, изменения или удаления, как результата операции обновления; 3) определение именованных (виртуальных) отношений, т.е. определение данных для их визуализации через представления; 4) определение снимка, т.е. определение данных для сохранения их в виде мгновенного снимка отношения; 5) определение правил безопасности, т.е. определение данных, для которых осуществляется контроль доступа; 6) определение требований устойчивости, т.е. определение данных, которые входят в область для некоторых операций управления одновременным доступом; 7) определение правил целостности, т.е. некоторых особых правил, которым должна удовлетворять БД. Выражения РА служат для символического высокоуровневого представления намерений пользователя. Дейт, ссылаясь на работы Тодда и Дарвена, предложил новые алгебраические операторы: расширение и подведение итогов. Оператор расширения обеспечивает возможность горизонтального или построчного вычисления в алгебре. Оператор подведения итогов выполняет аналогичную функцию для вертикальных вычислений. В описанной алгебре нет средств для скалярных вычислений. На практике это часто используется. Для этих целей и вводится оператор расширения: Расш.(R) – арифметическое выражение, операндами которого являются атрибуты отношения . Новое отношение похоже на исходное , но содержит дополнительный атрибут, значения которого получены посредством некоторых скалярных вычислений. В качестве может быть взята функция: Операция подведения итогов: Операторы обновления: РМ кроме РА может включать операции реляционного присвоения. Операция присвоения дает возможность «запоминать» значение некоторых алгебраических выражений в БД и т.о. изменять состояние БД, т.е. обновлять ее.
Присвоение – это грубая операция, потому что она позволяет только полностью заменить значение отношения. , где – реляционные выражения, представляющие совместимые по типу отношения. Операцию присвоения можно теоретически использовать для описания более точных операций: вставки и удаления: , где – тоже отношение, состоящее из одного кортежа. Но операции объединения и разности не позволяют должным образом обрабатывать ошибки. Так, при выполнении операции объединения не пресекается попытка вставки уже существующего кортежа, а при операции удаления – удаление несуществующего кортежа. Поэтому используются явные операции вставки, обновления и удаления: Значение отношения вычисляется, и все кортежи результата вставляются в отношение . в – может быть реляционным выражением. – скалярное выражение. (может быть выражение) Все эти операции действуют на уровне множеств. Множество кортежей обновляется; вставляется; удаляется.
Реляционные сравнения: РА в том виде, в котором она была изначально определена, не поддерживала прямого сравнения двух отношений. Например, является ли одно подмножеством другого. – арифметический оператор сравнения Для определения, является ли отношение пустым, используется функция, возвращающая логическое значение: истина, если отношение пусто, ложь – в противном случае.
|
||||||||
Последнее изменение этой страницы: 2017-01-25; просмотров: 308; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.223.21.5 (0.084 с.) |