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


         

Таблица хранит внешние ключи определяемых


Таблица хранит внешние ключи определяемых пользователем типов и соответствующих им информационных схем. Пара внешних ключей «тип–схема» формирует составной первичный ключ записи в таблице Defined_Types_To_Schemas, чем контролируется уникальность включения типа в одну и ту же схему.

Для детального описания перечислимых, селективных и агрегатных типов дополнительно используются таблицы Enumeration_Constants, Select_Types и Aggregate_Types. Таблица Enumerations_Constants содержит списки возможных значений для каждого перечислимого пользовательского типа. Ее столбцы хранят символьные значения перечислимого типа и внешний ключ соответствующей записи типа в таблице Defined_Types. Аналогичным образом, таблица Select_Types представляет списки базовых типов, входящих в определение каждого конкретного селективного типа, в виде внешних ключей записей типов в таблице Defined_Types. В столбцах таблицы агрегатных типов Aggregate_Types содержится информация о типе агрегата (ARRAY, LIST, SET или BAG), базовом типе его элементов в виде внешнего ключа соответствующей записи в таблице Defined_Types, разрешенных значениях нижней и верхней границ агрегата, признаках допустимости наличия уникальных и неопределенных элементов.

Таблица классов Entities предназначена для представления объектных типов информационной схемы, зарегистрированной в базе данных. Ее столбцы хранят первичные ключи записей и уникальные имена сущностей. Аналогично определяемым типам, привязка классов к схеме осуществляется через отдельную таблицу соответствия Entities_To_Schemas. Для реконструкции отношений наследования между классами используется таблица Inheritance_Relations, в которой данные отношения представлены парами внешних ключей записей классов родителей и потомков в таблице Entities. Поскольку язык EXPRESS допускает множественное наследование с признаками AND или ANDOR, важно иметь альтернативное представление иерархии наследования в виде множеств всех родительских классов, данные которых включаются в конструируемые объекты сложных классов.

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