Вопросы ГЭК 2009new (1094840), страница 24
Текст из файла (страница 24)
Для приведения сущности ко второй нормальной форме следует:
-
выделить атрибуты, которые зависят только от части первичного ключа, создать новую сущность;
-
поместить атрибуты, зависящие от части ключа, в их собственную (новую) сущность;
-
установить связь от прежней сущности к новой.
Третья нормальная форма (3NF). Сущность находится в третьей нормальной форме, если она находится во второй нормальной форме и никакой неключевой атрибут не зависит от другого неключевого атрибута (не должно быть взаимозависимости между неключевыми атрибутами).
Для приведения сущности к третьей нормальной форме следует:
-
создать новую сущность и перенести в нее атрибуты с одной и той же зависимостью от неключевого атрибута;
-
использовать атрибут(ы), определяющий эту зависимость, в качестве первичного ключа новой сущности;
-
установить связь от новой сущности к старой.
Реляционная алгебра. Основные категории команд языка реляционных баз данных (SQL).
Обработку данных реляционной модели можно реализовать методами реляционной алгебры.
Реляционная алгебра, определена Коддом и содержит 8 операций, разделенных на две группы:
-
Теоретико – множественные операции - объединение, пересечение, вычитание и декартово произведение.
-
Специальные реляционные операции – выборка, проекция, соединение, деление
Теоретико-множественные операции
Реляционный оператор представляет собой функцию с отношениями в качестве аргументов и возвращающую отношение в качестве результата.
R=f(R1, R2….. Rn)
В качестве аргументов в реляционные операторы могут быть проставлены другие реляционные операторы, подходящие по типу.
R=f(f1(R11, R21….. Rn1), f2(R21, R22….. R2n)….)
В силу этого реляционная алгебра является замкнутой.
Отношения называются совместимыми по типу, если они имеют идентичные заголовки, а именно:
-
отношения имеют одно и тоже множество имен атрибутов, т.е. для любого атрибута в одном отношении найдется атрибут с таким же наименованием в другом отношении.
-
атрибуты с одинаковыми именами определены на одних и тех же доменах.
Некоторые отношения не являются совместимыми по типу, но становятся таковыми после переименования атрибутов.
Оператор переименования R rename A1,A2,… as new A1, new A2…,
Например:
R rename student as starosta
Объединение
Объединением двух совместимых по типу отношений называется отношение с тем же заголовком, что и у R1 и R2, и телом, включающим все кортежи операндов, за исключением повторяющихся.
Синтаксис R1 union R2
R1
Шифр | Фамилия | Стипендия |
11 | Котова | 300 |
22 | Серов | 250 |
33 | Леонидов | 350 |
R2
Шифр | Фамилия | Стипендия |
11 | Котова | 300 |
22 | Даниленко | 250 |
55 | Леонидов | 350 |
Объединение
Шифр | Фамилия | Стипендия |
11 | Котова | 300 |
22 | Серов | 250 |
33 | Леонидов | 350 |
22 | Даниленко | 250 |
55 | Леонидов | 350 |
Операторы не передают результату никаких данных о потенциальных ключах.
Пересечение
Пересечением двух совместимых по типу отношений R1 и R2 называется отношение с тем же заголовком, что и у отношений R1 и R2, и телом, состоящим из кортежей, принадлежащих одновременно обоим отношениям R1 и R2.
Синтаксис
R1 intersect R2
Шифр | Фамилия | Стипендия |
11 | Котова | 300 |
Вычитание
Вычитанием двух совместимых по типу отношений R1 и R2, называется отношение с тем же заголовком, что и у отношений R1 и R2, и телом, состоящим из кортежей, принадлежащих отношению R1 и не принадлежащих R2.
Синтаксис R1 minus R2
Шифр | Фамилия | Стипендия |
22 | Серов | 250 |
33 | Леонидов | 350 |
Декартово произведение
Декартовым произведением двух отношений R1(R11, R12, R13…) и R2(R21,R22,R23,…) называется отношение, заголовок которого является сцеплением заголовком отношений R1 и R2:
(R11, R12, R13… R21,R22,R23,…), а тело состоит из кортежей, являющихся сцеплением кортежей отношений R1 и R2
(r11, r12, r13… r21, r22, r23….), таких что (r11, r12, r13…) принадлежит R1, а (r21, r22, r23….) принадлежит R2/
Синтаксис R1 times R2
Мощность произведения равна произведению мощностей. Если атрибуты R1 и R2 имеют атрибуты с одинаковыми наименованиями, то перед выполнением операции декартового произведения такие атрибуты необходимо переименовать. Совместимость по типу не требуется.
R1
Шифр | Фамилия |
11 | Котова |
22 | Серов |
33 | Леонидов |
R2
Код | Название |
1 | Математика |
2 | Философия |
R1 times R2
Шифр | Фамилия | Код | Название |
11 | Котова | 1 | Математика |
11 | Котова | 2 | Философия |
22 | Серов | 1 | Математика |
22 | Серов | 2 | Философия |
33 | Леонидов | 1 | Математика |
33 | Леонидов | 2 | Философия |
Специальные реляционные операторы
Выборка (ограничение, селекция)
Выборку называют горизонтальным срезом отношения по некоторому условию.
Выборкой на отношении R с условием С называется отношение с тем же заголовком, что и у отношения R, и телом, состоящим из кортежей, значения атрибутов которых при подстановке в условие С дают значение ИСТИНА.
Обычно условие С имеет вид R11 R12, где принадлежит {=}, а R11 и R12 атрибуты отношения R или скалярные значения. Такие выборки называются - выборки.
Синтаксис R where C или R where R11 R12
Шифр | Фамилия | Стипендия |
11 | Котова | 300 |
22 | Серов | 250 |
33 | Леонидов | 350 |
Выборка R where стипендия >250
Шифр | Фамилия | Стипендия |
11 | Котова | 300 |
33 | Леонидов | 350 |
Проекция
Проекцией отношения R по атрибутам R1, R2, R3…Rn, где каждый атрибут принадлежит R, называется отношение с заголовком (R1, R2, R3…Rn) и телом, содержащим множество кортежей вида (r1,r2,r3,…rn). При этом дубликаты кортежи удаляются.
Проекцию называют вертикальным срезом отношения.
Синтаксис R[R1, R2, R3…Rn]
Шифр | Фамилия | Факультет |
11 | Котова | ФИРЭ |
22 | Серов | Энергетический |
33 | Леонидов | ФИРЭ |
55 | Серов | СФ |
R[факультет]
Факультет |
ФИРЭ |
Энергетический |
ФИРЭ |
СФ |
Соединение
Обычно рассматривают несколько разновидностей операции соединения.
Общая операция соединения
-соединение
Экви-соединение
Естественное соединение
Наиболее важным из этих операций является операция естественного соединения. Так как остальные разновидности соединения являются частными случаями общей операции соединения.
Общая операция соединения:
Соединением отношений R1 и R2 по условию называется отношение
(R1 times R2) where C, где С представляет собой логическое выражение, в которое могут входить атрибуты отношений R1 и R2 и/или скалярные выражения. То есть, чтобы выполнить операцию соединения, необходимо выполнить последовательно операцию декартова произведения и выборки. Если в отношениях R1 и R2 имеются атрибуты с одинаковыми наименованиями, то перед выполнением соединения такие атрибуты необходимо переименовать.