Глава 1. Введение в базы данных и SQL
Обеспечением выполнения ограничений ссылочной целостности занимается СУБД,
а от разработчика требуется лишь указать атрибуты, служащие в качестве внешних
ключей. При проектировании баз данных часто предусматривается, что при удале-
нии строки из ссылочной таблицы соответствующие строки из ссылающейся таблицы
должны быть также удалены, а при изменении значения столбца, на который ссыла-
ется внешний ключ, должны быть изменены значения внешнего ключа в ссылающей-
ся таблице. Этот подход называется
каскадным удалением (обновлением).
Иногда применяются и другие подходы. Например, вместо удаления строк из ссыла-
ющейся таблицы в этих строках просто заменяют значения атрибутов, входящих
во внешний ключ, так называемыми NULL-значениями. Это специальные значе-
ния, означающие «ничто» или отсутствие значения, они не совпадают со значением
«нуль» или «пустая строка». NULL-значение применяется в базах данных и в качестве
значения по умолчанию, когда пользователь не ввел никакого конкретного значения.
Первичные ключи не могут содержать NULL-значений.
Транзакция — одно из важнейших понятий теории баз данных. Она означает набор
операций над базой данных, рассматриваемых как единая и неделимая единица ра-
боты, выполняемая полностью или не выполняемая вовсе, если произошел какой-
то сбой в процессе выполнения транзакции. Таким образом, транзакции являются
средством обеспечения согласованности данных. В нашей базе данных транзакцией
могут быть, например, две операции: удаление строки из таблицы «Студенты» и уда-
ление связанных по внешнему ключу строк из таблицы «Успеваемость».
Достарыңызбен бөлісу: