Локальная компьютерная сеть

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование

е одно из отношений не избыточно так как:

а) Все атрибуты одного отношения не могут быть найдены в другом отношении проекта (т.е. атрибуты одного отношения не являются подмножеством множества атрибутов другого отношения);

б) Все атрибуты одного отношения не могут быть найдены в отношении, полученном из других отношений проекта.

 

3.2 Разработка модели данных, используя CASE средства ERwin

 

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

ЕRwin - средство разработки структуры базы данных (БД). Он имеет развитый инструмент для облегчения проектирования модели данных. ЕRwin сочетает графический интерфейс Windows, инструменты для построения ЕR- диаграмм, редакторы для создания логического и физического описания модели данных и прозрачную поддержку ведущих реляционных СУБД и настольных баз данных. С помощью ERwin можно создавать или проводить обратное проектирование (реинжиниринг) баз данных.

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

Целевая СУБД, имена объектов и типы данных, индексы составляют второй (физический) уровень модели ЕRwin (Рисунок 3.3).

Диаграмма ERwin строится из трех основных блоков - сущностей, атрибутов и связей. Если рассматривать диаграмму как графическое представление правил предметной области, то сущности являются существительными, а связи - глаголами.

 

3.2.1 ERWin скрипт

/*Таблица для документов*/

СRЕАТЕ ТАВLЕ Документы (

id_Документы VARCHAR(20) NOT NULL,

№_ документа INTECER NULL,

Дата_ создания DATE NULL

);

ALTER TABLE Документы

ADD (PRIMARY KEY (id_документы));

/ *Таблица для комплектующих*/

СRЕАТЕ ТАВLЕ Комплектующие (

Инвентарный_ номер СНАR(20) NOT NULL,

id_Компьютеры VАRСНАR(20) NOT NULL,

id_Документы VАRСНАR(20) NOT NULL,

id_Комплектующие VАRСНАR(20) NULL,

Цена FLOAT NULL

);

ALTER TABLE Комплектующие

ADD (РRIМАRУ КЕУ (Инвентарный_ номер));

/*Таблица для компьютеров*/

СRЕАТЕ ТАВLЕ Компьютеры (

id_Компьютеры VАRСНАR(20) NOT NULL,

id_Ответственное_ лицо СНАR(20) NOT NULL,

id_Отделы VАRСНАR(20) NOT NULL,

Инвентарный_ номер СНАR(20) NULL,

iр_ Адрес СНАR(20) NULL,

Название СНАR(20) NULL,

Цена FLOAT NULL

);

АLТЕR ТАВLЕ Компьютеры

АDD (РRIМАRУ КЕУ (id_Компьютеры));

/*Ассоциация компьютеры- программное обеспечение*/

СRЕАТЕ ТАВLЕ Компьютеры_ Программное_ обеспеч (

id_Компьютеры VАRСНАR(20) NOT NULL,

Инвентарный_ номер VАRСНАR(20) NOT NULL

);

АLТЕR ТАВLЕ Компьютеры_ Программное_ обеспеч

АDD (РRIМАRУ КЕУ (id_Компьютеры, Инвентарный_ номер));

/* Таблица для ответственного лица*/

СRЕАТЕ ТАВLЕ Ответственное_ лицо (

id_Ответственное_ лицо СНАR(20) NOT NULL,

Имя VАRСНАR2(20) NULL,

Должность VАRСНАR2(20) NULL

);

АLТЕR ТАВLЕ Ответственное_ лицо

АDD (РRIМАRУ КЕУ (id_Ответственное лицо));

/*Таблица для отделов*/

СRЕАТЕ ТАВLЕ Отделы (

id_Отделы VАRСНАR2(20) NOT NULL,

Название VАRСНАR2(20) NULL,

Руководитель VАRСНАR2(20) NULL,

№_ комнаты VАRСНАR2(10) NULL ,

Телефон VАRСНАR2(11) NULL

);

АLТЕR ТАВLЕ Отделы

АDD (РRIМАRУ КЕУ (id_Отделы));

/* Таблица для пользователей*/

СRЕАТЕ ТАВLЕ Пользователи (

id_Пользователи VАRСНАR2(20) NOT NULL,

Id_Отделы VАRСНАR2(20) NOT NULL,

Имя VАRСНАR2(20) NULL,

Должность VАRСНАR2(20) NULL,

Логин VАRСНАR2(20) NULL,

Пароль VАRСНАR2(20) NULL

);

АLТЕR ТАВLЕ Пользователи

АDD (РRIМАRУ КЕУ (id_Пользователи));

/*Таблица для поставщиков*/

СRЕАТЕ ТАВLЕ Поставщики (

id_Поставщики СНАR(20) NOT NULL,

Название СНАR(20) NULL,

Web_сайт СНАR(20) NULL,

Е_mail СНАR(20) NULL,

Адрес СНАR(20) NULL,

Телефон СНАR(11) NULL

);

АLТЕR ТАВLЕ Поставщики

АDD (РRIМАRУ КЕУ (id_Поставщики));

/*Таблица для программного обеспечения*/

СRЕАТЕ ТАВLЕ Программное_ обеспечение (

Инвентарный_ номер VАRСНАR2(20) NOT NULL,

id_ Программное_ обеспечение VАRСНАR2(20) NOT NULL,

Цена FLOAT NULL

);

АLТЕR ТАВLЕ Программное_ обеспечение

АDD (РRIМАRУ КЕУ (Инвентарный_ номер));

/*Таблица для производителей*/

СRЕАТЕ ТАВLЕ Производители (

id_Производители VАRСНАR2(20) NOT NULL,

Название СНАR(20) NULL,

Web_сайт СНАR(20) NULL,

Е_mail СНАR(20) NULL,

Адрес СНАR(50) NULL

);

АLТЕR ТАВLЕ Производители

АDD (РRIМАRУ КЕУ (id_Производители));

/*Таблица для словаря комплектующих*/

СRЕАТЕ ТАВLЕ Словарь_комплектующие (

id_Комплектующие VАRСНАR2(20) NOT NULL,

id_Производители VАRСНАR2(20) NOT NULL,

id_Поставщики СНАR(20) NULL,

Название VАRСНАR2(20) NULL,

Модель VАRСНАR2(20) NULL

);

АLТЕR ТАВLЕ Словарь_комплектующие

АDD (РRIМАRУ КЕУ (id_Комплектующие));

/* Таблица для словаря ПО*/

СRЕАТЕ ТАВLЕ Словарь_ПО (

id_Программное_обеспечение VАRСНАR2(20) NOT NULL,

Название VАRСНАR2(20) NULL,

Версия VАRСНАR2(20) NULL,

Регистрационный_ключ VАRСНАR2(20) NULL,

Web_сайт VARСНАR2(20) NULL

);

АLТЕR ТАВLЕ Словарь_ ПО

АDD (РRIМАRУ КЕУ (id_ Программное_ обеспечение));

/ *Создание внешних ключей для организации