Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
госы 2013.docx
Скачиваний:
2
Добавлен:
01.05.2025
Размер:
4.38 Mб
Скачать

Целостность базы данных

«Целостность базы данных (database integrity)» – это соответствие имеющейся в базе данных информации её внутренней логике, структуре и всем явно заданным правилам. Каждое правило, налагающее некоторое ограничение на возможное состояние базы данных, называется ограничением целостности (integrity constraint). Примеры правил: вес детали должен быть положительным; количество знаков в телефонном номере не должно превышать 25; возраст родителей не может быть меньше возраста их ребёнка и т.д.

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

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

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

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

Таблица 14

Механизмы поддержания целостности базы данных

Вид целостности базы данных

Характеристика

Механизм достижения на уровне базы данных

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

Каждая запись сущности должна обладать уникальным идентификатором и содержать данные

  • установка первичного ключа

  • свойство поля – значение по умолчанию (default)

  • объект базы данных Default

  • свойства Null и not Null поля таблицы

  • объект ограничение, задаваемый для таблицы (UNIQUE Constraint)

Целостность доменов

Каждый атрибут принимает только допустимые значения

  • типы данных и пользовательские типы данных

  • объект базы данных Rule (правило)

  • объект ограничение, задаваемый для таблицы (CHECK Сonstraint)

  • объект базы данных Триггер

  • сxeма XML (XSD, DTD, XDR)

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

Набор правил, обеспечивающих логическую согласованность первичных и внешних ключей при вставке обновлении и удалении записей

  • при создании связи

  • объект базы данных Триггер

Пользовательские правила целостности

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

  • объект Базы данных – default

  • объект базы данных – Rule (правило)

  • объект ограничение, задаваемый для таблицы (UNIQUE constraint)

  • объект ограничение, задаваемый для таблицы (CHECK constraint)