Главная Обратная связь

Дисциплины:






Целостность реляционной БД



 

Для РБД фиксируются два базовых требования целостности, которые должны поддерживаться любой реляционной СУБД:

- Целостность сущностей. В БД должны быть различимые сущности, это обеспечивается если каждый кортеж имеет первичный ключ. Это требование автоматически удовлетворяется, если в системе не нарушаются базовые свойства отношений.

- Целостность по ссылкам - требование внешнего ключа состоит в том, что для каждого значения внешнего ключа, появляющегося в ссылающемся отношении, в отношении на которое идет ссылка должен найтись кортеж с таким же значением первичного ключа, либо значение внешнего ключа должно быть неопределено, т.е. никуда не ссылаться. Если связь установлена, то должны быть связаны конкретные кортежи. Это может обеспечиваться следующими способами:

1) Запрещение удаления записи, на которую идет ссылка - ограничение, т.е. сначала удаляются ссылающиеся записи;

2) При удалении записи удаляются все ссылки на нее - каскадирование;

3) Обнуление значений внешних ключей, при удалении записи на которую имеются ссылки.

Слайд 7

 

Обработка данных в реляционной модели.

Обработка данных построена на двух основных механизмах:

1. Реляционная алгебра

2. Реляционное исчисление

 

1. Реляционная алгебра имеет в виду набор операторов, в которых опрандами являются отношения и результат так же отношение.

Кодд предложил 8 операторов, которые можно разделить на 2 группы. В первую входят традиционные теоретико-множественные операторы, во вторую - специальные реляционные операторы.

Первая группа (теоретико-множественные операторы):

- объединение

- пересечение

- вычитание

- декартово произведение

1) Объединение возвращает результатом множество, которое состоит из элементов, принадлежащих обоим множествам. Объединяемые отношения должны быть совместимы по объединению: отношения должны обладать одинаковыми заголовками.

2) Пересечение возвращает отношение, включающее все кортежи, входящие одновременно в оба отношения - операнда.

С=A Intersect B

Отношения должны обладать одинаковыми заголовками.

3) Вычитание возвращает все кортежи, входящие в отношение - первый операнд; и которые не входят в отношение - второй операнд.

A Minus B

Отношения должны быть совместимы по типу.

Примеры по таблице:

A Union B = S1 S2 S3

A Intersect B = S2

A Minus B = S1

 

 

4) Декартово произведение возвращает отношение, кортежи которого являются сцеплением (слиянием) кортежей первого и второго операторов. Совместимость по декартову произведению: отношения должны иметь заголовки с несовпадающими атрибутами.



Дано отношение: А={А1……Аn} с заголовками А1…Аn

Другое отношение В={В1……Вm} с заголовками В1……Вm

A Times B={Ai Bj}={A1…An, B1…Bm} - слияние заголовков

 






sdamzavas.net - 2019 год. Все права принадлежат их авторам! В случае нарушение авторского права, обращайтесь по форме обратной связи...