Ограничения целостности данных в иерархической базе 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Ограничения целостности данных в иерархической базе



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

Обеспечивается контроль соответствия значения поля в экземпляре записи типу данных, определенному в схеме для типа записи.


 

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

Сетевой подход к организации данных является расширением иерархического. В отличие от иерархической модели запись-потомок в сетевой модели может иметь любое число предков.

Схема сетевой БД строится из типовых записей, образующих поименованные двухуровневые деревья, называемые наборами. Корневая запись набора называется владельцем набора, а типовые порожденные записи – члены набора. Между владельцем и любым членом набора поддерживается связь типа 1:М. В наборе владелец является сильным типом записи, а член – слабым, т.е. обязательно существующим в составе набора. Набор изображается диаграммой Бахмана

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

• один тип записи может быть владельцем многих наборов;

• тип записи, являющийся членом одного набора, может владеть другими наборами;

• один тип записи может являться членом нескольких наборов.

Легко видеть, что ранее рассмотренная схема иерархической БД преобразуется в сетевую, если связи между уровнями иерархии преобразовать в отдельные наборы.

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

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

• текущая запись базы – последний обработанный экземпляр записи;

• текущая запись в типе – последний обработанный экземпляр записи определенного типа;

• текущая запись в наборе – последняя обработанная запись в указанном наборе;

текущий экземпляр набора – экземпляр набора определенного типа, в котором находится текущая запись базы. Поскольку в схеме сетевой базы все наборы равноправны, для входа в базу и поиска записей предусматриваются точки входа, называемые вычисляемыми записями. Эти записи в схеме помечают дополнительной стрелкой,

Экземпляр вычисляемой записи может быть найден по значению первичного ключа.

Поиск экземпляра вычисляемой записи реализует оператор: Найти вычисляемую запись < Тип записи > <Значение ключа, используемое для поиска экземпляра записи>.

Вычисленный экземпляр записи создает текущие записи в БД, которые используются следующими поисковыми операторами:

Найти следующую запись в заданном типе < Тип записи >;

Найти следующую запись в текущем наборе < Тип набора >;

Найти следующую запись заданного типа в текущем наборе < Тип набора > < Тип записи >;

Найти (перейти на) запись, являющуюся владельцем текущего набора < Имя набора >;

Найти следующую запись заданного типа, удовлетворяющую условиям на значения полей в текущем экземпляре заданного набора <Имя набора >,<Тип записи>, <Логическое условие на значения полей>.

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

Для включения новой записи – члена набора сначала должны быть определены текущие экземпляры набора, в которые эта запись включается.

 

 



Поделиться:


Последнее изменение этой страницы: 2017-01-25; просмотров: 134; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.133.131.168 (0.004 с.)