На главную страницу
Форум txt.version   




Статья :: Базы данных : Ограничения целостности

2.5. Ограничения целостности

Целостность (от англ. integrity - нетронутость, неприкосновенность, сохранность, целостность) - понимается как правильность данных в любой момент времени. Но эта цель может быть достигнута лишь в определенных пределах: СУБД не может контролировать правильность каждого отдельного значения, вводимого в базу данных (хотя каждое значение можно проверить на правдоподобность). Например, нельзя обнаружить, что вводимое значение 5 (представляющее номер дня недели) в действительности должно быть равно 3. С другой стороны, значение 9 явно будет ошибочным и СУБД должна его отвергнуть. Однако для этого ей следует сообщить, что номера дней недели должны принадлежать набору (1,2,3,4,5,6,7).

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

Выделяют три группы правил целостности:

  1. Целостность по сущностям.
  2. Целостность по ссылкам.
  3. Целостность, определяемая пользователем.

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

  1. Не допускается, чтобы какой-либо атрибут, участвующий в первичном ключе, принимал неопределенное значение.
  2. Значение внешнего ключа должно либо:
    1. быть равным значению первичного ключа цели;
    2. быть полностью неопределенным, т.е. каждое значение атрибута, участвующего во внешнем ключе должно быть неопределенным.
  3. Для любой конкретной базы данных существует ряд дополнительных специфических правил, которые относятся к ней одной и определяются разработчиком. Чаще всего контролируется:

уникальность тех или иных атрибутов,
диапазон значений (экзаменационная оценка от 2 до 5),
принадлежность набору значений (пол "М" или "Ж").

[Назад] [Содержание] [Вперед]

Базы данных : Ограничения целостности

страницы в данном разделе 
 Базы данных : Данные и ЭВМ  Базы данных : Концепция баз данных
 Базы данных : Архитектура СУБД  Базы данных : Модели данных
 Базы данных : Основные понятия  Базы данных : Характеристика связей и язык моделирования
 Базы данных : Классификация сущностей  Базы данных : О первичных и внешних ключах
 Базы данных : Ограничения целостности  Базы данных : О построении инфологической модели
 Базы данных : Реляционная структура данных  Базы данных : Реляционная база данных
 Базы данных : Манипулирование реляционными данными  Базы данных : Цели проектирования
 Базы данных : Универсальное отношение  Базы данных : Почему проект БД может быть плохим?
 Базы данных : О нормализации, функциональных и многозначных зависимостях  Базы данных : Нормальные формы
 Базы данных : Процедура нормализации  Базы данных : Процедура проектирования
 Базы данных : Различные советы и рекомендации  Базы данных : Назначение и предметная область
 Базы данных : Построение инфологической модели  Базы данных : Проектирование базы данных
 Базы данных : ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ  Базы данных : Основы проектирования реляционных баз данных
 Базы данных : ЛИТЕРАТУРА   


Разделы
Околокомпьютерная литература (375)
Программирование (102)
Программы (75)
ОС и Сети (49)
Интернет (29)
Аппаратное обеспечение (16)
Базы данных (6)

Содержание сайта (выборка)
Apache
Протоколы TCP/IP (принципы, протоколы и архитектура)

PHP, PELR, JSP
PHP
JavaServer Pages (JSP)

Базы данных
Основы mysql
СУБД INFORMIX
СУБД POSTGRES
Основы проектирования реляционных баз данных

HTML, javascript
Спецификация HTML 4.01
Каскадные Таблицы Стилей, Уровень 2
Клиентский JavaScript. Справочник.
JavaScript руководство пользователя
Серверный JavaScript 1.4. Руководство по Использованию.

Паскаль, C, C++, C#
GCC (примеры)
FAQ Валентинa Озеровa DELPHI
C





 
©  programming-lang.com  справочник программиста