Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ПБД_лабораторная2

.pdf
Скачиваний:
29
Добавлен:
22.05.2015
Размер:
680.32 Кб
Скачать

Рис. 10. Диалог Views

Рис. 11. Закладка Where диалога Views

Для представления V_42 на рис. 9 SQL-запрос будет выглядеть так:

11

CREATE VIEW V_42 (CustomerName, CustomerAddress, City, OrderAmount,

OrderDate, OrderShipDate)

AS

SELECT DISTINCT CUSTOMER.CustomerName,

CUSTOMER.CustomerAddress, CUSTOMER.City, ORDER.OrderAmount,

ORDER.OrderDate, ORDER.OrderShipDate

FROM CUSTOMER, ORDER;

а для V_43 - так:

CREATE VIEW V_43 (City, CustomerCount)

AS

SELECT CUSTOMER.City, Count (*)

FROM CUSTOMER

WHERE Country= ‘Россия

GROUP BY City

HAVING Count(*)>2;

В закладке Comment можно внести комментарий для представления.

UDP позволяет связать с представлением свойства, определяемые пользовате-

лем.

Для редактирования свойств колонок представления служит редактор View Columns (рис. 12).

Рис. 12. Диалог View Columns

Для его вызова следует щелкнуть правой кнопкой мыши по представлению и выбрать в меню пункт Database View Columns.

Редактор содержит следующие закладки:

General. Позволяет ассоциировать колонку с доменом. По умолчанию колонка

12

представления принадлежит тому же домену, что и колонка родительской таблицы. Select. Так же как в диалоге View Editor (закладка Select, кнопка New Expression), здесь можно создать выражение (в том числе включающее аг-

регативные функции) для колонки.

Comment содержит комментарий для каждой колонки.

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

Stored Procedure позволяет связать с представлением хранимые процедуры. Pre and Post Script позволяет связать с представлением команды, выполняе-

мые до и после генерации представления.

3.2. Правила валидации и значения по умолчанию

ERwin поддерживает правила валидации для колонок, а также значение, при- сваиваемое колонкам по умолчанию. Правило валидации задает список допустимых значений для конкретной колонки и/или правила проверки допустимых значений. Значение по умолчанию - значение, которое нужно ввести в колонку, если никакое другое значение не задано явным образом во время ввода данных. С каждой колон- кой или доменом можно связать значение по умолчанию (если выбранная СУБД поддерживает домены).

Если щелкнуть по кнопке , расположенной справа от раскрывающегося списка Valid (см. рис. 8), появляется диалог Validation Rules (рис. 13), который слу- жит для задания правил валидации.

Рис. 13. Диалог Validation Rules

13

Вдиалоге Validation Rules можно задать максимальное и минимальное значе- ние и тип валидации (где проверять - на сервере или в клиентском приложении).

Например, в таблице Сотрудники значение, вводимое в колонку Возраст, должно быть больше 0, но меньше 60. Для описания этого правила можно создать правило валидации с именем "Проверка_возраста", которое содержит выражение: BETWEEN 0 AND 60. Использование этого правила валидации гарантирует, что диа- пазон вводимых значений будет от 0 до 60. СУБД выдаст сообщение об ошибке, ес- ли вводимый возраст находится вне границ заданного диапазона.

Вверхней части редактора Validation Rules содержится список всех сущест- вующих правил валидации. Для создания нового правила валидации следует щелк- нуть по кнопке New, ввести имя правила в поле Name диалога New Validation и щелкнуть по кнопке ОК. После этого можно ввести выражение для правила валида- ции. Поля Min и Мах служат для задания нижней и верхней границы диапазона зна- чения.

Переключатель Valid Values List вызывает редактор Valid Value. Редактор Valid Value позволяет создавать список всех допустимых значений, которые можно хранить в колонке, и связать его с правилом валидации.

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

Раскрывающийся список в верхней части редактора Valid Value содержит все правила валидации. Чтобы ввести новое значение в список допустимых значений, нужно щелкнуть по кнопке New и ввести значения (рис. 14).

Рис. 14. Определение правила валидации для должности

14

При выходе из редактора Valid Value (кнопка OK) ERwin автоматически изме- няет правило валидации, используя введенные допустимые значения.

Редактор Default/Initial Values (рис. 15) позволяет создать значение, которое автоматически, по умолчанию, присваивается колонке. Для вызова редактора слу-

жит кнопка справа от раскрывающегося списка Default диалога Columns (см. рис. 8). Например, может быть по умолчанию определен возраст сотрудников – 25 лет.

Рис. 15. Диалог Default/Initial Values

Для создания нового значения по умолчанию следует щелкнуть по кнопке New, ввести имя правила в поле Name диалога New Default и щелкнуть по кнопке ОК. В окне Default Name показывается список всех имен значений по умолчанию. Для удаления и переименования значения служат соответственно кнопки Delete и Rename.

После создания правила валидации и значения по умолчанию их можно при- своить одной или нескольким колонкам или доменам.

Задание

1.Нормализовать БД до 3НФ (использовать контрольную работу № 2).

2.Построить физическую модель БД, рассматриваемой вами в 1 лабораторной работе.

3.Для колонок физической модели установите правила валидации и значения по умолчанию.

15

Контрольные вопросы.

1.Что такое нормализация?

2.Какова цель денормализации?

3.Что называется функциональной зависимостью?

4.Что называется полной функциональной зависимостью?

5.1НФ.

6.2НФ.

7.3НФ.

8.НФБК.

9.4НФ.

10.5НФ.

11.Что такое домен?

12.С какой целью в ERWin определяются домены?

13.Какова цель создания физической модели?

14.Что такое представление?

15.С какой целью в физической модели применяются представления? 16.Как создаются представления?

17.Что такое «правила валидации»?

18.Как реализовываются правила валидации?

19.Как реализовывается значение по умолчанию?

16