Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
metod_erwin.doc
Скачиваний:
9
Добавлен:
22.11.2019
Размер:
260.61 Кб
Скачать

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

  1. Откройте файл 13-tutor.er1.

  2. Откройте редактор индексов Access Index (Access – в данном случае СУБД). Создайте новый альтернативный индекс с именем Phone.

  3. Установите поле Store_PhoneNumber в качестве альтернативного ключа.

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

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

  1. Откройте файл 06-tutor.er1.

  2. В рекурсивной связи сущности Employee найдите внешний ключ.

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

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

Лабораторная работа №5.

Цель работы: Проектирование представлений (View).

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

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

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

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

AS <запрос>

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

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

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

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

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

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

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

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

  1. Откройте файл 12-tutor.er1.

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

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

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

Лабораторная работа №6.

Цель работы: Хранимые процедуры и триггеры.

6.1. Хранимые процедуры

Практический опыт создания приложений обработки данных показывает, что ряд операций над данными, реализующих общую для всех пользователей логику и не связанных с пользовательским интерфейсом, целесообразно вынести на сервер. Однако для написания процедур, реализующих эти операции, стандартных возможностей SQL не достаточно, поскольку здесь необходимы операторы обработки ветвлений, циклов и т.д. Поэтому многие поставщики СУБД предлагают собственные процедурные расширения SQL (PL/SQL компании Oracle и т.д.). Эти расширения содержат логические операторы (IF ... THEN ... ELSE), операторы перехода по условию (SWITCH ... CASE ...), операторы циклов (FOR, WHILE, UNTIL) и операторы предачи управления в процедуры (CALL, RETURN). С помощью этих средств создаются функциональные модули, которые хранятся на сервере вместе с базой данных. Обычно такие модули называют хранимыми процедурами (Stored Procedure). Они могут быть вызваны с передачей параметров любым пользователем, имеющим на то соответствующие права. В некоторых системах хранимые процедуры могут быть реализованы и в виде внешних по отношению к СУБД модулей на языках общего назначения, таких, как C или Pascal. Вызов созданной функции осуществялется из оператора SELECT (так же, как вызываются функции агрегирования).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]