суббота, 15 августа 2009 г.

ервая, вторая и третья нормальные формы

3.3.4. П
Отношение находится в 1 НФ тогда и только тогда, когда все используемые в нем домены содержат только скалярные значения.
Иными словами:
Украинские новости науки, статьи и публикации.
Отношение находится в 1 НФ тогда и только тогда, когда значения всех полей неделимы.
НАПРИМЕР, если в отношении есть поле ФИО, отношение не находится в 1 НФ.
Отношение находится во 2 НФ тогда и только тогда, когда оно находится в 1 НФ и каждый неключевой атрибут неприводимо зависит от первичного ключа.
НАПРИМЕР, рассмотрим отношение Успеваемость (№зачетки, Фамилия, Имя, Отчество, Дисциплина, Оценка).
Если первичным ключом здесь назначить №зачетки, то от этого ключа не будет зависеть атрибут Дисциплина. Т.е. отношение не находится во 2 НФ.
Можно тогда в качестве первичного ключа взять множество атрибутов {№зачетки, Дисциплина}. В этом случае от такого ключа зависят все атрибуты, НО атрибуты Фамилия, Имя, Отчество зависят приводимо, т.к. из детерминанта следующей ФЗ можно убрать атрибут Дисциплина:
{№зачетки, Дисциплина} → {Фамилия, Имя, Отчество}
То есть это отношение не находится во 2 НФ.
Отношение находится в 3 НФ тогда и только тогда, когда оно находится во 2 НФ и каждый неключевой атрибут нетранзитивно зависит от первичного ключа.
Иными словами:
Отношение находится в 3 НФ тогда и только тогда, когда каждый кортеж отношения состоит из значения первичного ключа, которое идентифицирует некоторый объект, и набора взаимно независимых (или пустых) значений атрибутов, описывающих этот объект.
НАПРИМЕР, добавим в отношение Студенты атрибут СтаростаГруппы. Тогда в отношении будут следующие ФЗ:
{№зачетки} → {Группа}, {Группа} → {СтаростаГруппы}
То есть атрибут СтаростаГруппы зависит от первичного ключа (№зачетки) транзитивно через атрибут Группа, а не напрямую.
Значит, это отношение не находится в 3 НФ.
Таким образом, если отношение находится только в 1 НФ, но не находится ни во 2 НФ, ни в 3 НФ, существует избыточность, которая приводит к так называемым аномалиям обновления, т.е. нарушении целостности при вставке, удалении или изменении данных.
ПРИМЕР: рассмотрим отношение, которое не находится ни во 2 НФ, ни в 3 НФ.
Успеваемость (№зачетки, Фамилия, Имя, Отчество, Группа, СтаростаГруппы, Дисциплина, Оценка).
Изобразим диаграмму ФЗ этого отношения:











Какие могут произойти аномалии при обновлении?
Например, такие:
• При добавлении нового студента при правильном указании группы, в которой он учится, может быть ошибочно указан староста группы.
• При удалении одной из записей будет удалена не только информация об оценке соответствующего студента, но и информация о том, в какой группе он учится.
• При изменении старосты группы необходимо вручную изменить его для всех записей студентов этой группы – при этом можно ошибиться.
Для этого отношения можно произвести декомпозицию. Это удобно сделать, руководствуясь схемой. Например, на три следующие проекции:










Полученные отношения все находятся во2 НФ и в 3 НФ.
Но без потерь ли произведена эта декомпозиция? Да, т.к. после соединения этих трех отношений получим первоначальное.
Полученные отношения являются независимыми проекциями.
Проекции R1 и R2 отношения R независимы тогда и только тогда, когда выполняются два условия:
1) каждая ФЗ в отношении R является логическим следствием ФЗ в проекциях R1 и R2;
2) общие атрибуты проекций R1 и R2 образуют потенциальный ключ хотя бы для одной из них.
Для наших трех проекций первое условие выполняется, т.к. все их ФЗ (обозначенные стрелками) обеспечивают ФЗ первоначального отношения (сравнить стрелки).
Выполняется и второе условие: для проекций (1) и (2) общий атрибут – Группа, он первичный ключ для (2); для (1) и (3) общий атрибут - №зачетки, он первичный ключ для (1).
А вот если разбить отношение Успеваемость на следующие проекции:










первое условие выполнится, а второе - не выполнится (атрибут Группа общий для 1 и 2, но не является потенциальным ключом ни в одном из них). То есть, эти проекции не являются независимыми.
Отношение, которое не может быть подвергнуто декомпозиции с получением независимых проекций, называется атомарным.
Но это не означает, что любое неатомарное отношение может быть разбито на атомарные отношения. И не всегда есть смысл такого разбиения.
НАПРИМЕР, отношение Студенты (№зачетки, Фамилия, Имя, Отчество, Группа) в нашей БД Факультет атомарно. А отношение Студенты1 (№зачетки, Фамилия, Имя, Отчество, Группа, Адрес, Телефон) неатомарно, т.к. телефон зависит от адреса, поэтому отношение Студенты1 можно разбить на такие независимые проекции: Студенты2 (№зачетки, Фамилия, Имя, Отчество, Адрес) и АдресаТелефоны (Адрес, Телефон). Но в этом нет смысла.

3.3.5. Общие цели нормализации отношений
В общем случае можно выделить следующие четыре цели процедуры нормализации:
1. Исключение избыточности.
2. Устранение аномалий обновления.
3. Проектирование макета данных, который соответствовал бы реальному миру, был интуитивно понятен и служил основой для дальнейшего развития.
4. Упрощение процесса наложения ограничений целостности. Эта цель связана с потенциальными ключами, т.е. если соблюдать условие уникальности потенциальных ключей и организовывать связи только через них, то эта цель будет достигнута.

БД28

3.3.3. Декомпозиция без потерь

Недорогие и качественные винтовые компрессоры пригодятся вам

Нормализация использует операцию декомпозиции (одно из дополнительных правил вывода к аксиомам Армстронга). Дело в том, что процедура нормализации предусматривает разбиение отношения на другие, т.е. его декомпозицию. Причем эта декомпозиция должна произойти без потерь информации из первоначального отношения. Еще можно сказать, что декомпозиция должна быть обратимой.
НАПРИМЕР: рассмотрим отношение Студенты (№зачетки, Фамилия, Имя, Отчество, Группа, Адрес, Телефон).
Выполним декомпозицию на два отношения:
Студенты1 (№зачетки, Фамилия, Имя, Отчество) и Студенты2 (Группа, Адрес, Телефон)
При такой декомпозиции информация утрачивается – для каждой группы будет выведены адрес и телефон только первого по списку студента этой группы. Полученные два отношения невозможно соединить обратно, восстановив полностью первоначальное отношение.
Выполним декомпозицию по-другому:
Студенты3 (№зачетки, Фамилия, Имя, Отчество) и Студенты4 (№зачетки, Адрес, Телефон)
Вот это – декомпозиция без потерь! Можно спокойно соединить полученные два отношения, получив первоначальное.
По своей сути декомпозиция – это операция проекции реляционной алгебры, поэтому каждое полученное при декомпозиции отношение называют проекциями первоначального.
Возникает вопрос: какие условия должны соблюдаться для того, чтобы проекции первоначального отношения при обратном соединении гарантировали получение исходного отношения? На этот вопрос дает ответ теорема Хеза:
Пусть R (А, В, С) – отношение, где А, В, С – подмножества множества его атрибуты.
Если R удовлетворяет ФЗ А → В, то R равно соединению его проекций {А, В} и {А, С}.
(Заметим, что теорема не утверждает «тогда и только тогда»).

В любом хозяйстве пригодится эмаль хв 124 и другие краски из каталога

Вам точно понравится такой инструмент, как винтовой компрессор, сделанный для вас

БД27

3.3.2. Обзор нормальных форм
Вся теория нормализации отношений является не более и не менее как формализацией соображений здравого смысла. Потребность такой формализации в том, чтобы сформулировать общие правила для разработчиков БД, а главное – если такая задача будет полностью выполнена, то эти правила могут быть автоматизированы для реализации на ЭВМ.
Процесс нормализации отношений основан на концепции нормальных форм (НФ).
Говорят, что отношение находится в некоторой НФ, если оно удовлетворяет заданному набору условий.
Известно несколько НФ:










Первые три НФ были определены Коддом, следующая – нормальная форма Бойса-Кодда (НФБК) – соответственно Бойсом и Коддом, 4 и 5 НФ были определены Фейгином.
Из схемы видно, что во всем множестве отношений некоторые находятся в 1НФ, из них – некоторые во 2НФ и т.д.
Возникает вопрос, можно ли продолжить нормализацию дальше, получить 6, 7 и т.д. НФ? Действительно, существуют дополнительные НФ, но 5НФ считается достаточной, в некотором смысле окончательной.

ВСе про бильярд и боулинг

Интересные и познавательные обучающие игры для детей будут способствовать развитию ребенка

БД26

3.3. Нормализация отношений
3.3.1. Понятие функциональной зависимости (ФЗ)
Вспомним, что любое отношение рассматривается как переменная, принимающая определенные значения в определенные моменты времени.
Определение ФЗ:
Пусть R – переменная отношения, X, Y – произвольные подмножества множества всех атрибутов R. Y функционально зависит от X тогда и только тогда, когда для любого допустимого значения R каждое значение X связано только с одним значением Y.
Обозначается: X→Y
Говорится: «X функционально определяет Y» или «Y функционально зависит от X».
Левая часть выражения называется детерминантом (детерминантой) ФЗ, правая – зависимой частью ФЗ.
НАПРИМЕР: в отношении Студенты существуют такие ФЗ
№зачетки → {Ф, И, О}
№зачетки → {Адрес, Группа}
{№зачетки, Ф, И, О} → {Адрес, Группа}
Это, конечно, частные случаи, из которых можно сделать вывод, что если детерминант содержит первичный ключ, то множество всех остальных атрибутов отношения функционально зависит от него.
Еще ПРИМЕР: в отношении Кафедры существуют ФЗ
КодКафедры → {Кабинет, Телефон}
НазваниеКафедры → {Кабинет, Телефон}
Видно, что аналогичный вывод можно сделать не только для первичных ключей, но и для альтернативных, то есть для всех потенциальных ключей.
Множество атрибутов отношения, которое содержит в качестве подмножества потенциальный ключ называется суперключом этого отношения.
Третий ПРИМЕР: если в отношение Студенты добавить атрибут СтаростаГруппы, то появятся такие ФЗ:
Группа → СтаростаГруппы
СтаростаГруппы → Группа
(причем, ни атрибут Группа, ни атрибут СтаростаГруппы не являются потенциальными ключами)
В этом случае имеется избыточность данных, которая может привести к вводу ошибочных сведений, т.е., пользователь случайно может ввести в качестве старосты не того студента, но система не выдаст ошибку.
Фактически, если в отношении имеется ФЗ в которой детерминант не является суперключом, то отношение избыточно.
Можно сказать, что при проектировании БД нужно стремиться к сокращению количества ФЗ, на что и направлена нормализация.
Правда, есть такие зависимости, которые учитываются только формально, т.к. они всегда существуют и подразумеваются самим определением ФЗ. Это тривиальные ФЗ.
Тривиальная ФЗ – это такая ФЗ, зависимая часть которой является подмножеством детерминанта.
НАПРИМЕР:
{№зачетки, Ф, И, О} → {Ф, И, О}
{КодПодгруппы, Курс} → {Курс}
Понятно, что такие тривиальные ФЗ не рассматриваются при нормализации, но все же они существуют и всегда формально учитываются.
ФЗ называется неприводимой слева, если ни один атрибут не может быть опущен из ее детерминанта (иными словами, детерминант неизбыточен).
НАПРИМЕР: ФЗ {№зачетки, Фамилия, Имя, Отчество} → {Адрес} приводима, т.к. из детерминанта можно исключить атрибуты Фамилия, Имя, Отчество без нарушения ФЗ.
А ФЗ {Группа, Дисциплина} → {Преподаватель} неприводима, т.к. из детерминанты нельзя исключить не Группу, ни Дисциплину без нарушения зависимости.



газоны рулонные


Газоны ландшафтный дизайн, ландшафтное проектирование

Для вас качественные работы по озеленению и благоустройству на даче и приусадебном участке

Для ценительниц процедур по уходу за телом Шоколадное обертывание Москва лучший выбор.

Узнайте все про скидки Санкт-Петербурга в одном месте

БД25

1) Соединение. Результатом соединения является отношение, кортежи которого – это сцепление двух кортежей (принадлежащих соответственно двум исходным отношениям), имеющих общее значение для одного или нескольких общих атрибутов исходных отношений.
Причем эти общие значения в результирующем отношении появляются только один раз.

a x x l a x x l
b y y m b y y m
c z
z n c z
y n



a x l a x l
b y m b y m
c z n b y n
A JOIN B
Соединение обладает свойствами:
• ассоциативность: (АВ)С=А(ВС);
• коммутативность: (АВ)С=АВС
Эта операция имеет несколько разновидностей, но самое распространенное – естественное соединение (на схеме). Есть еще θ(тэта)-соединение. Оно предназначено для случаев, когда два отношения соединяются на основе некоторых условий (xθy), отличных от эквивалентности. В этом случае на SQL:
(A TIMES B) WHERE xθy
т.е. сочетание декартова произведения и выборки.
ПРИМЕР естественного соединения: соединение отношений Студенты и Группы по атрибуту КодГруппы.
ПРИМЕР θ-соединения: соединение отношений Студенты и Группы по атрибуту КодГруппы так, чтобы получить информацию о студентах только групп 5 курса.

2) Деление. Для двух отношений – бинарного и унарного – результатом деления является отношение, содержащее все значения одного атрибута бинарного отношения, которые соответствуют в другом атрибуте всем значениям унарного отношения.
A DIVIDEBY B
ПРИМЕР: в БД Факультет есть отношение Занятия – тройное (вместо бинарного). Чтобы получить список групп, которые изучают заданный набор дисциплин (например, СУБД и ИС) можно применить деление этого отношения на специально созданное унарное, содержащее заданный набор дисциплин.



Интереснейшие загадки, головоломки и тесты на любой вкус для вас!

Для вас сайт про распродажи Екатеринбурга - узнайте первым о выгодных распродажах!

Нужны ответы на викторину Pokerstrategy для получения бездепозитного бонуса? Здесь найдете все, что нужно!

БД24

3.2.4. Основные операторы реляционной алгебры
Реляционная алгебра, определенная Коддом, состоит из 8 операторов. Их можно разделить на две группы: реляционные операции, аналогичные традиционным операциям над множествами, и собственно реляционные операции.
Для всех реляционных операций необходимо выполнение свойства замкнутости: результатом каждой операции над отношениями также должно являться отношение.

Реляционные операторы, аналогичные традиционным операциям над множествами:

1) Объединение. Результатом объединения является отношение, содержащее все кортежи, которые принадлежат хотя бы одному из двух отношений.
На языке SQL: A UNION B, где А и В – имена отношений.
В отличие от объединения множеств, результатом является не множество кортежей, а именно отношение. Поэтому кортежи должны быть однородны, т.е. объединяемые отношения должны быть совместимы по типу. Это значит, что:
a) каждое из них имеет одно и то же множество атрибутов;
b) соответствующие атрибуты определены на одном и том же домене.
ПРИМЕР: допустим, в БД Факультет имеются отдельные таблицы Лаборанты и Преподаватели. Эти две таблицы можно объединить, в результате получиться таблица, содержащая все данные на сотрудников: и преподавателей, и лаборантов.

2) Пересечение. Результатом пересечения является отношение, содержащее кортежи, принадлежащие и 1, и 2 отношению. Также должно выполняться условие совместимости по типу.
A INTERSECT B
ПРИМЕР: допустим опять, что в БД Факультет есть отдельная таблица Лаборанты. С помощью этой операции можно найти тех студентов, которые подрабатывают лаборантами.

3) Вычитание. Результатом вычитания является отношение, все кортежи которого принадлежат первому и не принадлежат второму отношениям. Также должно выполняться условие совместимости по типу.
A MINUS B
ПРИМЕР: Можно выяснить, какие студенты не работают лаборантами на факультете и наоборот.

4) Произведение (декартово). Результатом произведения является отношение, содержащее все возможные кортежи, которые являются сочетанием двух кортежей, принадлежащих соответственно двум начальным отношениям.
a x a x
b y a y
c b x
b y
c x
c y
A TIMES B
Отметим, что результатом является отношение, а не множество пар кортежей, как это бывает при произведении над множествами. Т.е. первоначальные кортежи сцепляются, т.е. образуют в результате новый кортеж.
ПРИМЕР: Если выполнить произведение отношений Студенты и Дисциплины, то получим в результате отношение, в котором будет указано, что каждый студент изучает каждую дисциплину.
Собственно реляционные операторы:
Выборка (еще называют операцией ограничения). Результатом выборки является отношение, содержащее все кортежи первоначального отношения, удовлетворяющие определенным условиям.
Можно сказать, что это «горизонтальное» подмножество начального отношения.
A WHERE xθy (θ (тэта)– любой оператор сравнения: <,>,=,…)
ПРИМЕР: любой запрос на выборку.
Проекция. Результатом проекции является отношение, содержащее все кортежи отношения после исключения из него некоторых атрибутов. (Такие кортежи называются подкортежами)
Можно сказать, что это «вертикальное» подмножество начального отношения.
Специального оператора на SQL для проекции нет, т.к. для ее выполнения достаточно в стандартной конструкции запроса SELECT указать, какие атрибуты отношения берутся.
Обратим внимание на 2 частных случая:
• возможно указание списка всех атрибутов исходного отношения - это тождественная проекция;
• возможно указание пустого списка атрибутов – это нулевая проекция.
ПРИМЕР: простой запрос.

Если вы хотите создать интернет магазин, то вам поможет наш сервис!

Скачайте игры для детей бесплатно и пусть ваши ребятишки развиваются, играя

БД22

Правила внешних ключей
Правило ссылочной целостности подразумевает состояние БД в конкретный момент времени. Но как избежать временных некорректных ситуаций, которые могут возникнуть при обновлении данных в БД?
Самый простой путь – запретить любые операции, приводимые к нарушению правила ссылочной целостности.
Но при обновлении БД не избежать временного нарушения целостности (НАПРИМЕР, расформировывается группа или в начале учебного года переименовывается группа) необходимо ввести компенсирующие операции, которые “исправят” это временное нарушение целостности.
Эти комплексные операции связаны с внешними ключами, поэтому для любого внешнего ключа при создании связи необходимо ответить на два вопроса:
1) Что должно произойти при попытке удалить объект ссылки внешнего ключа? (НАПРИМЕР, убрать все группы 5 курса из таблицы Группы в конце года) Возможны как минимум два варианта ответов на этот вопрос:
a) ограничить, т.е. не удалять, пока пользователь не удалит ссылающиеся кортежи, т.е. отложить удаление;
b) каскадировать, т.е. удалить, удаляя все соответствующие ссылающиеся кортежи.
2) Что должно произойти при попытке изменить (обновить) значение потенциального ключа, на который имеется ссылка? (НАПРИМЕР: замена названия группы ИНФ-11 на ИНФ-21 в таблице Группы в начале учебного года):
a) ограничить, т.е. отложить до удаления значений ссылающихся кортежей;
b) каскадировать, т.е. обновить во всех ссылающихся кортежах.
Т.е. выбор ответов на эти два вопроса и является заданием (или определением) правил внешних ключей.
3.2.3. Null-значения
Осложнения при обеспечении целостности данных могут быть вызваны неопределенными или отсутствующими значениями. НАПРИМЕР, в каталоге произведений искусства не известен автор картины; в БД Школа дети – сироты (нет родителей).
Для решения проблем отсутствия значений Кодд предложил ввести специальные метки, которые назвал Null-значениями, которые определил так: если данный кортеж имеет Null-значение данного атрибута, то это означает, что в нем значение атрибута отсутствует.
Это не то же, что числовой 0 или пробел, это вообще не значение, а только метка – обозначение отсутствия любого значения.
Но некоторые специалисты по реляционным БД (например, Дейт) считают, что Null-значения не нужны и даже вредны, т.к. это нарушает целостность данных. Но тем не менее большинство современных реляционных БД поддерживают Null-значения.
С использованием Null-значений вводиться правило целостности объектов:
Ни один элемент первичного ключа базового отношения не может быть Null-значением.
Это правило объясняется следующим:
• кортежи отношений соответствуют объектам реального мира;
• по определению эти объекты различимы, т.е. некоторым образом опознаваемы;
• первичные ключи выполняют функцию уникальной идентификации объектов;
• если невозможно идентифицировать объект, то нельзя сказать существует ли он вообще.
Необходимо сделать некоторые уточнения этого правила:
1) это правило касается только базовых отношений (т.е. не вычисляемых, не производных);
2) правило применимо только для первичных ключей, а для альтернативных ключей Null-значения могут быть запрещены или разрешены.
Как же используются Null-значения для внешних ключей?.
• Когда нет данных, т.е. нет соответствующего кортежа в ссылочном отношении (НАПРИМЕР, нет данных о родителях ученика);
• При каскадном удалении. (НАПРИМЕР, на факультете расформировали одну из групп, а студентов этой группы распределяют в другие, но пока точно не известно в какие. Тогда при каскадном удалении этой группы из таблицы Группы удалятся все студенты этой группы из таблицы Студенты. Но нам их не надо удалять, поэтому удобнее временно заменить значение групп в отношении Студенты на Null-значения.
Как можно избежать Null-значений? Использовать значения по умолчанию (ПРИМЕР).
В Microsoft Access, как и во многих современных СУБД, поддерживается Null-значения, но некоторые разработчики их избегают, заменяя значениями по умолчанию.

Профессиональные программы для раскрутки сайтов сделают оптимизацию и продвижение сайта более простым и удобным.

На сайте odica вы можете прочитать немало полезной информации о раскрутке сайтов и продвижении ресурсов

БД23

3.2.2. Внешние ключи
Вспомним нашу БД Факультет. В отношении Студенты значение атрибута Группа допустимо только в том случае, если такое значение имеется в качестве значения первичного ключа отношения Группы. В этом случае атрибут Группа в отношении Студенты является внешним ключом, ссылающимся на первичный ключ – КодГруппы отношения Группы.
Внешний ключ существует для обеспечения непротиворечивости данных с внешним миром и внутри БД, т.е. значение внешнего ключа не может быть таким, которого нет среди значений первично ключа связанной таблицы.
В реляционной БД предусмотрена связь внешнего ключа не только с первичным, но и с любым другим потенциальным ключом, т.е. с альтернативным. Но нельзя создавать дублирующие связи – и с первичным, и с альтернативным – чтобы избежать избыточности данных.
Уточним определение внешнего ключа:
Пусть R2 — базовое отношение некой БД. Тогда внешний ключ FK (foreign key) отношения R2 – это подмножество множества атрибутов R2, такое, что:
1) существует базовое отношение R1, содержащее потенциальный ключ CK;
2) каждое значение FK в текущем значении R2, всегда совпадает со значением CK некоторого кортежа в текущем значении отношения R1.
Некоторые замечания по этому определению (следствия):
1. По определению, каждое значение внешнего ключа должно является значением соответствующего потенциального ключа, однако, обратное не требуется, т.е. потенциальный ключ, соответствующий данному внешнему ключу может содержать значения, которые в данный момент не являются значением внешнего ключа. НАПРИМЕР, может существовать кружок, который пока никто не посещает.
2. Данный внешний ключ будет составным тогда и только тогда, когда соответствующий потенциальный ключ также будет составным. Аналогично – внешний ключ будет простым тогда и только тогда, когда соответствующий потенциальный ключ – простой (состоящий из одного атрибута). НАПРИМЕР, добавим в БД Факультет отношение Расписание (№Недели, ДеньНедели, №пары, Группа, Дисциплина, Преподаватель, Кабинет). Здесь внешний ключ {Группа, Дисциплина, Преподаватель} будет составным, как и соответствующий первичный ключ в отношении Занятия (Группа, Дисциплина, Преподаватель).
3. Каждый атрибут, входящий в данный внешний ключ должен быть определен на том же домене, что и соответствующий атрибут соответствующего потенциального ключа.
4. R1 и R2 не обязательно различны НАПРИМЕР, в отношение Учителя можно ввести атрибут Куратор, значениями которого будут коды учителей их этого же отношения.
С понятием внешнего ключа связывается еще ряд терминов:
По сути значение внешнего ключа является ссылкой к кортежу, содержащему соответствующее значение потенциального ключа. Этот кортеж называется ссылочный (целевой) кортеж, а содержащее его отношение – ссылочное (целевое). Отношение, содержащее внешний ключ называется ссылающимся отношением. (ПРИМЕР)
Существует также ссылочная диаграмма.
НАПРИМЕР: Группы  Студенты  Кружки/Секции
Стрелки в ссылочной диаграмме направлены от отношения с внешним ключом к отношению с потенциальным ключом.
Иногда над стрелочками пишет название атрибута, по которому идет связь.
Ссылочный путь от отношения Rn к отношению Rm - это последовательность связанных отношений, которая приводит от Rn к Rm.
Rn  Rn+1  …  Rm-1  Rm
НАПРИМЕР: ссылочный путь от отношения Студенты к отношению Дисциплины: СтудентыГруппыДисциплины
Существует понятие ссылочного цикла: Rn  Rn+1  …  Rn-1  Rn
С внешними ключами связано правило ссылочной целостности:
БД не должна содержать несогласованных значений внешнего ключа (несогласованные значения – такие значения, которых нет для потенциального ключа в ссылочном отношении).
По сути, это правило эквивалентно определению внешнего ключа.

Если вас интересует оптимизация и продвижение сайта, обращайтесь к нам и вы получите эффективное продвижение вашего сайта

Для вас оперативная регистрация ooo нашими профессиональными юристами. Начните свое дело вместе с нами!