Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
(3)erwin_metod_1.doc
Скачиваний:
4
Добавлен:
02.05.2019
Размер:
240.64 Кб
Скачать

Упражнение 4.1. Создание альтернативного индекса

  1. Откройте файл emovies.er1.

  2. Откройте редактор индексов Key Groups (Model). Создайте новый альтернативный индекс с именем Phone.

  3. Установите в сущности Store поле Store Phone в качестве альтернативного ключа.

  4. Настройте опцию отображения альтернативного ключа Alternate Key Designator в Display Options / Tables.

Упражнение 4.2. Унификация атрибутов.

  1. Откройте файл emovies.er1.

  2. Найдите внешний ключ в сущности Employee, относящийся к рекурсивной связи. Откройте для этой связи редактор связей Relationship Editor. Выберите закладку Rolename/RI Actions. Дайте имя внешнему ключу – chief.

  3. Включите отображение имени роли в настройках экрана.

Лабораторная работа 5. Проектирование представлений (View)

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

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

Представление определяется с помощью команды

CREATE VIEW <имя_представления> [<имя_столбца>,...]

AS <запрос>

При этом должны соблюдаться следующие ограничения:

  • представление должно базироваться на единственном запросе (UNION не допустимо)

  • выходные данные запроса, формирующего представление, должны быть не упорядочены (ORDER BY не допустимо).

На изменение данных в представлении накладываются ограничения. Кратко о них можно сказать следующее:

  • Если представление основано на одной таблице, изменения данных в нем допускаются. При этом изменяются данные в связанной с ним таблице.

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

Представление реализуется как запрос в терминах SQL. ERWin имеет специальные инструменты для создания и редактирования представлений.

Упражнение 5.1. Изменение представлений (запросов)

  1. Откройте файл emovies.er1.

  2. Выберите экран View. Выберите представление Overdue Notice. Откройте View Editor.

  3. Создайте новое поле выражением (кнопка New Expression). Назовите его Overdue_charge_rate. В Expression Box наберите movie_rental_rate*1.5.

  4. Найдите новое поле в представлении Overdue Notice.

Упражнение 5.2. Создание представлений (запросов)

  1. Откройте файл emovies.er1.

  2. Перейдите на физический уровень. Создайте новое представление Custom_View. Добавьте в него поля Customer_last_name из таблицы Customer_1 и Payment_amount из таблицы Payment. Затем добавьте поля rental_date, movie_rental_rate и rental_status из таблицы Movie_Rental_Record. Создайте новое поле в представлении, рассчитывающее Payment_amount* movie_rental_rate.