Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курс лекций по предмету_ТП.doc
Скачиваний:
26
Добавлен:
11.05.2015
Размер:
6.01 Mб
Скачать

5.4. Домены

Стандарт IDEF1x определяет домен как – поименованный и определенный набор значений, такой что один или более атрибутов получают значения из этого домена.

Домен, как и класс, который фиксирует и определяет допустимое множество значений. Например, домен «код–страны» (см. рис. 5.5.) – определяет код страны, который может состоять из двух специальных букв. Домен – это неизменный класс значения, которого не изменяются во времени. В противоположность этому значения сущности меняются во времени. Каждое значение домена уникальное в этом домене.

Рис. 5.5. Пример домена

Существуют два типа доменов: базовые домены (Character, Numeric, Boolean в IDEF1x, а в Erwin: String, Number, Datetime, Blob) и типизированные домены (производные), например, «код–страны–СНГ». Все базовые домены имеют правила использования значений данных из домена. Наиболее используемые это два правила: список значений и диапазоны. Для каждого домена могут быть установлены свои правила определения значений.

Типизированные домены – это подтипы базовых типов или другие типизированные домены.

На логическом уровне домены можно описать без конкретных физических свойств, а уже на физическом уровне они получают конкретные специфические свойства. Например, домен «код–страны–СНГ» на логическом уровне может иметь тип String, а на физическом уровне (DB2) будет присвоен тип Char(2) и указано конкретное множество значений домена и правила валидации. Для другой БД физический уровень значений может быть задан свой.

5.5. Представления

Представления (View) представляют собой объекты СУБД данные, в которых формируются динамически при обращении к представлению, т.е. данные не хранятся постоянно как в таблицах БД. Представление определяется в терминах тех таблиц БД и их атрибутов, которые уже есть БД. Для создания представления может использоваться одна или более реальных таблиц БД.

Использование представлений (View) крайне удобный механизм:

– для обеспечения безопасности и секретности доступа к данным в БД, для каждого пользователя (разработчика), может быть разработано и предоставлено свое представление (видение) данных;

– для разработки интерфейса взаимодействия между подсистемами или системами;

– для разработки пользовательского интерфейса WEB – сайта;

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

Разработка представлений разрабатывается на физическом уровне и AllFusion Erwin Data Modeler содержит специальные средства для создания таблиц представления и операторов SQL для заполнения их данными.

Так на рис. 5.6. приведена диаграмма представления для таблиц БД. Эти таблицы содержат внутренние суррогатные PK ключи идентификации данных, которые для пользователя БД ни о чем не говорят. Пользователю БД необходимы реальные общепринятые данные: код дороги, код отделения дороги, код станции на дороге – поэтому для отображения реальных данных используются представления. Таблицы представлений (прямоугольники с овальными углами) связаны отношениями с таблицами БД (прямоугольники) и содержат те атрибуты, которые будут заполнены из соответствующих атрибутов таблиц БД.

Рис. 5.6. Диаграмма представления для таблиц БД

На рис. 5.7. и 5.8. приведен диалог Views для определения представления и генерации оператора Create для его создания в среде ERwin.

На рис. 5.9. приведен диалог создания оператора Select для заполнения представления.

Рис. 5.7. Определение представления

Рис. 5.8. Генерации оператора Create для создания представления

Рис. 5.9. Диалог создания оператора Select для заполнения представления

На рис. 5.10. приведена информация, выдаваемая пользователю прямо из таблицы БД, которая содержит внутренние ключи (PK и FK) и на рис. 5.11. приведена информация, выдаваемая пользователю через разработанное представление.

Рис. 5.10. Информация, выдаваемая пользователю прямо из таблицы БД

Рис. 5.11. Информация, выдаваемая пользователю через разработанное представление