Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Автоматизация плановых и эконом расчетов.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
1.42 Mб
Скачать

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

Ограничения целостности - это логические ограничения, которые накладываются на данные и используются в моделях данных для поддержания целостности данных при функционировании системы, т.е. СУБД должна обеспечивать непротиворечивость данных заданным ограничениям при переводе БД из одного состояния в другое.

Внутренние ограничения целостности определяют допустимые структуры данных, которые поддерживаются СУБД, и множество операций над данными.

Явные ограничения целостности специфицируются в БД с помощью специальных конструкций языка описания данных и устанавливают формат вводимых данных.

Ограничения целостности можно специфицировать для элементов, групп и групповых отношений.

7.4.4. Сетевая модель данных

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

Структуры подобных БД строятся на основании следующих основных композиционных правил:

1) база данных может содержать любое количество типов записей и типов наборов;

2) между двумя типами записи может быть определено любое количество типов наборов;

3) тип записи может быть владельцем и одновременно членом нескольких типов наборов.

Примерный набор операций над данными:

  • Найти конкретную запись в наборе однотипных записей.

  • Перейти от предка к первому потомку по некоторой связи.

  • Перейти к следующему потомку в некоторой связи.

  • Перейти от потомка к предку по некоторой связи.

  • Создать новую запись.

  • Уничтожить или модифицировать запись.

  • Включить в связь.

  • Исключить из связи.

  • Переставить в другую связь и т.д.

7.4.5. Иерархическая модель данных

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

1) все типы связей функциональные;

2) структура связей древовидная.

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

Рекурсивно дерево определяется как конечное множество Т, состоящее из одного или более узлов (вершин), таких, что: 1) существует один специально выделенный узел, называемый корнем дерева; 2) остальные узлы разбиты на m0 непересекающихся подмножеств T1, T2, ..., Tm, каждое из которых в свою очередь является деревом.

Деревья T1, T2, ..., Tm называют поддеревьями корня.

Число поддеревьев узла называют степенью узла. Узел называется концевым, если он имеет нулевую степень. Узел, не являющийся ни корнем, ни концевым узлом, называется узлом ветвления.

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

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

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

Вследствие внутренних ограничений иерархической модели каждому экземпляру зависимой группы соответствует уникальное множество экземпляров родительских групп.

Типичные операторы манипулирования иерархически организованными данными:

  • Найти указанное дерево БД.

  • Перейти от одного дерева к другому.

  • Перейти от одной записи к другой внутри дерева.

  • Перейти от одной записи к другой в порядке обхода иерархии.

  • Вставить новую запись в указанную позицию.

  • Удалить текущую запись.