Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции Теория Баз Данных.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
319.49 Кб
Скачать

1.Понятие ссылочной целостности

Понятие целостности является одним из основополагающих понятий в технологии баз данных.

Это понятие связано с тем, что база данных отражает некоторый объект реального мира в информационном виде. В реляционной модели объекты реального мира представлены в виде совокупности взаимосвязанных отношений.

Под целостность будем понимать соответствие информационной модели объектам реального мира в каждый момент времени. Т.е.в Базе Данных должны содержаться только достоверные данные. Также необходимо отслеживать только существенные, т.е. значимые изменения предметной области.

Например, в информационной системе «библиотека» если не стоит задачи отслеживать местонахождение книги на конкретном стеллаже, то в БД не отражен номер стеллажа и полка. В данной ситуации важен факт наличия каждого экземпляра в библиотеке на данный момент времени.

В модели данных должны быть предусмотрены средства, которые позволят получить объективную информацию в любой момент времени.

Поддержка целостности в реляционной модели данных в ее классическом понимании включает в себя 3 аспекта.

Во-первых, это поддержка структурной целостности, которая требует того что реляционная СУБД должна допускать работу только с однородными структурами данных типа «реляционное отношение», т.е. в нем отсутствуют повторяющиеся картежи, нет упорядоченности картежей и обязательно наличие первичного ключа.

Во-вторых – поддержка языковой целостности, которая состоит в том, что реляционная СУБД должна обеспечивать языки описания и манипулирования данными не ниже стандарта SQL.

В-третьих – поддержка ссылочной целостности, которая означает обеспечение одного из принципов взаимосвязи:

  • Картежи подчиненного отношения уничтожаются при удалении картежа основного отношения, связанного с ними.

  • Картежи основного отношения модифицируются при удалении картежа основного отношения, связанного с ним, при этом на месте ключа родительского отношения ставится неопределенное (NULL) значение.

Ссылочная целостность обеспечивает поддержку непротиворечивого состояния БД в процессе модификации данных, при выполнении операций добавления и удаления.

2.Задание ограничений целостности базы данных.

Структурная, языковая и ссылочная целостность определяют правила работы СУБД с реляционными структурами данных. Требования поддержки этих трех видов целостности должна уметь делать каждая СУБД, а разработчики должны это учитывать при построении БД.

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

Рассмотрим следующие типы ограничений целостности данных:

- Обязательные данные

- Ограничения для доменов атрибутов

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

- Ссылочная целостность

Обязательные данные - т.е. некоторые атрибуты всегда должны содержать одно из допустимых значений и не могут иметь пустого значения.

Задать это ограничение, значит при формировании структуры таблицы такому атрибуту установить проверку возможными для конкретной программы способами.(пример: поле должность сотрудника не может быть пустым).

Ограничения для доменов атрибутов – некоторые атрибуты имеют множество допустимых значений. Например поле «пол» может иметь одно из двух допустимых значений «м» или «ж». Данные ограничения устанавливаются при определении доменов атрибутов присутствующих в модели данных.

Целостность сущностей – первичный ключ любой сущности не может иметь пустое значение. Подобные ограничения должны учитываться при определении первичных ключей.

Ссылочная целостность- это ограничение означает, если внешний ключ содержит некоторое значение, то оно обязательно должно присутствовать в родительской таблице. Важная проблема связанная с поддержкой ссылочной целостности, это ее поддержка при операциях вставки, обновления или удаления первичного или внешнего ключей. Существует несколько стратегий обработки попыток удаления строки родительского отношения, которые однозначно приведет к нарушению целостности отношения. При создании базы данных необходимо воспользоваться функциями для поддержки ссылочной целостности:

- CASCADE (при удалении первичного ключа удаляются все строки из дочерних таблиц связанные по удаляемому ключу)

- RESTRICT (блокирует удаление ключа если есть связанные по нему данные)

- NO ACTION (не контролируются связи)

Лекция 7.

Тема: ”Создание взаимосвязанных отношений в БД между таблицами. Понятие индекса”

План лекции:

  1. Понятие индексного файла

  2. Создание индексов. Типы индексов.