пользователей: 30398
предметов: 12406
вопросов: 234839
Конспект-online
РЕГИСТРАЦИЯ ЭКСКУРСИЯ

Операции, нарушающие ссылочную целостность.

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

Обычно перед заполнением таблицы определяют отношения порядка между таблицами:

к 0му уровню относят таблицы, в которых данные не зависят от данных других таблиц. Обычно это таблицы со справочной информацией (наз. справочники);

к 1му ур. относят таблицы, данные в которых зависят только от таблиц 0го уровня;

к 2му - таблицы, зависящие от таблиц 0го и 1го уровня.

Сначала заполняют таблицы 0го уровня, затем 1го и т.д.

Операции, нарушающие ссылочную целостность

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

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

Для родительской таблицы:

  • Вставка. Возникает новое значение первичного ключа. Существование записей в родительской таблице, на которые нет ссылок из дочерней таблицы, допустимо, операция не нарушает ссылочной целостности.
  • Обновление. Изменение значения первичного ключа в записи может привести к нарушению ссылочной целостности.
  • Удаление. При удалении записи удаляется значение первичного ключа. Если есть записи в дочерней таблице, ссылающиеся на ключ удаляемой записи, то значения внешних ключей станут некорректными. Операция может привести к нарушению ссылочной целостности.

Для дочерней таблицы:

  • Вставка. Нельзя вставить запись в дочернюю таблицу, если для новой записи значение внешнего ключа некорректно. Операция может привести к нарушению ссылочной целостности.
  • Обновление. При обновлении записи в дочерней таблице можно попытаться некорректно изменить значение внешнего ключа. Операция может привести к нарушению ссылочной целостности.
  • Удаление. При удалении записи в дочерней таблице ссылочная целостность не нарушается.

т.к. в определении СЦ участвуют 2 отношения - главное и подчиненное, то необходимо рассмотреть 6 возможных вариантов:

Отношения

Операции 

Главное  Подчиненное
Вставка - +
Обновление + +
Удаление + -

- : ссылочная целостность не нарушается

+: ссылочная целостность нарушается

Таким образом, ссылочная целостность в принципе может быть нарушена при выполнении одной из четырех операций:

  1. Обновление записей в родительской таблице.
  2. Удаление записей в родительской таблице.
  3. Вставка записей в дочерней таблице.
  4. Обновление записей в дочерней таблице.

21.01.2019; 15:18
хиты: 73
рейтинг:0
Точные науки
информатика
База данных
для добавления комментариев необходимо авторизироваться.
  Copyright © 2013-2024. All Rights Reserved. помощь