Классика баз данных - статьи

       

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


По поводу целостности данных была проделана некоторая работа в рамках других моделей [8,14,16,28]. При наличии в модели сущность-связь

явных понятий сущности и связи эта модель будет полезна для понимания и спецификации ограничений, направленных на поддержки целостности данных. Например, имеется три основных типа ограничений на значения:

  • Ограничения на допустимые значения (allowable values) в множестве значений. Этот вопрос обсуждался при определении схемы в разд. 3.2.

  • Ограничения на разрешенные (permitted) значения для некоторого атрибута. В некоторых случаях не все допустимые значения из множества значений являются разрешенными для некоторых атрибутов. Например, возраст служащих может быть ограничен диапазоном значений от 20 до 65, т.е.

    AGE(e) ∈ (20,65), где e ∈ EMPLOYEE.

    Заметим, что для более ясного выражения семантики мы используем нотации уровня 1. Так как для каждого множества сущность/связь имеется соответствующее отношение сущность/связь, приведенное выше выражение можно легко перевести в нотации уровня 2.

  • Ограничения на существующие значения (existing values) в базе данных. Имеется два типа ограничений:

    1. Ограничения на множества существующих значений. Например:

      { NAME(e) | e ∈ MALE_PERSON } ⊆ { NAME(e) | e ∈ MALE_PERSON }

    2. Ограничения на конкретные значения. Например:

      TAX(e)≤SALARY(e), e ∈ EMPLOYEE или BUDGET(ei) = ∑ BUDGET(ej), где ei ∈ COMPANY ej ∈ DEPARTMENT и [ei,ej] ∈ COMPANY-DEPARTMENT.



    Содержание раздела