Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
BD_PM_Final.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
963 Кб
Скачать
☆

21. Null–значения. Целостность сущностей.

Целостность данных имеет огромное значение для БД не только в семантическом смысле, но и в структурном. В любой РБД существует множество ограничений.

Целостность сущностей:

Главное назначение любой БД состоит в хранении больших массивов сложноструктурированных данных и мгновенного доступа к ним, причем эти данные должны представлять информацию по конкретной предметной области реального мира. Однако на практике часто встречаются ситуации, когда часть сложноструктурированных данных либо не известна, либо не полна. Для того чтобы решить проблему неполноты данных в БД ввели специальный тип данных Null – значение. Т е Null – значение – это не значение а маркер, указатель, показывающий, что данное значение не определено. Допущение Null – значения приводит к тому, что любое алгебраическое выражение, использующее в качестве операнда Null – значения, имеет по определению неопределенное значение. Поэтому СУБД определения истинности логических выражений используют вместо традиционной двухзначной матлогики нетрадиционную трехзначную: TRUE, FALSE, NILL. По определению тело отношения не может включать в себя одинаковые кортежи, это означает, что каждый кортеж каким либо образом должен обладать свойством уникальности, однако хорошо известно, что свойством уникальности могут обладать и отдельные атрибуты отношения, вот почему эти атрибуты можно использовать для идентификации кортежа. Опр. Пусть , подмножество атрибутов. Тогда К называется потенциальным ключом, если это подмножество обладает 2 свойствами: Уникальности, неизбыточности. Уникальность означает, что в отношении не может быть 2 одинаковых значений из К или не может быть двух кортежей с одинаковым значением из К. неизбыточность означает, что никакое подмножество в К не должно обладать свойством уникальности. Потенциальный ключ, состоящий из одного атрибута, называется простым. Потенциальный ключ, состоящий из нескольких атрибутов, называется составным .Отношение может иметь несколько потенциальных ключей. Традиционно, один из потенциальных ключей объявляется первичным, а остальные – альтернативными. Различия между первичным и альтернативными ключами могут быть важны в конкретной реализации реляционной СУБД, но с точки зрения реляционной модели данных, нет оснований выделять таким образом один из потенциальных ключей. На практике большинство отношений имеют единственный потенциальный ключ, который по определению является первичным. Теперь можно однозначно утверждать, что потенц ключи служат средством идентификации не только объектов предметной области, но и единственным средством адресации в отношениях на уровне кортежей. Свойство потенциального ключа приводит к тому что его атрибуты не могут содержать неопределенные значения – это и есть правило целостности сущностей: атрибуты, входящие в состав некоторого потенц ключа не могут принимать Null – значения.

22. Внешние ключи. Ссылочная целостность. Родительские и дочерние отношения.

Различные объекты предметной области всегда взаимосвязаны друг с другом. Поэтому естественно ожидать, что РМД сможет учесть и реализовать эти взаимосвязи. В РМД такие взаимосвязи реализуются с помощью механизма внешних ключей. Если взять РМД в которой используются несколько отношений, то в них легко можно выделить взаимосвязи типа: Один–ко–многим, многие–к–одному (одно и то же), многие–ко–многим, один–к–одному. Взаимосвязь многие–ко–многим в РМД реализовать нельзя, они реализуются косвенно, как множество взаимосвязей один–ко–многим. Отношение входящее во взаимосвязь со стороны «Один» называют родительским отношением. Механизм создания родительского отношения очень прост, если в родительском отношении выделить атрибуты потенциального ключа, т е в дочернее отношение достаточно механически добавить атрибуты потенциального ключа родительских отношений, чтобы превратить в дочернее. Причем добавленные атрибуты потенциального ключа и будут называться внешним ключом дочернего отношения. В результате этого механизма внешние ключи однозначно определяют связь кортежей дочернего отношения с родительскими. Внешний ключ, так же как и потенциальный может быть простым или составным. Главное, что внешний ключ, а точнее его атрибуты должен быть определен на тех же доменах, что и соответствующий первичный ключ родительского отношения. Внешний ключ не должен обладать свойством уникальности, если же он уникален, то связь между отношениями имеет тип один–к–одному. Т к по определению внешние ключи служат для взаимосвязи дочернего и родительского отношения, они не должны указывать на несуществующие объекты родительского отношения. Это и есть правило целостности внешних ключей: внешние ключи всегда должны быть согласованными, т е для каждого значения внешнего ключа дочернего отношения всегда должно существовать соответствующее значение первичного ключа родительского отношения. Очевидно, что ссылочная целостность может быть нарушена в результате операций по изменению состояния БД, т е вставка, редактирование и удаление кортежей в отношении. Существует 4 типа таких критических операций: 1. Изменение кортежей в родительском отношении 2. удаление кортежей в родительском отношении 3. вставка нового кортежа в дочернее отношение 4. обновление кортежей в дочернем отношении.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]