Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Пример разработки информационной модели




Университетская библиотека

Для отображения информационной модели рассматриваемого процесса используются следующие сущности:

- Отделы ­– для фиксации информации об отделах библиотеки. Содержит номер отдела, его название, табельный номер и фамилию начальника отдела;

- СотрудникиБиблиотеки – для хранения информации о сотрудниках, которые работают в библиотеке;

- Студенты – запись информации о студентах, которые пользуются библиотекой;

- Экземпляр – книги, зарегистрированные в отделах библиотеки;

- ЗаменаЭкземпляров хранит информацию о протоколах замены книг;

- Преподаватели – информация о преподавателях-пользователях библиотеки;

- Периодические издания – информация о газетах, журналах, которые имеются в библиотеке;

- Списанные экземпляры хранит информацию о протоколах списания книг;

- Книга;

- Заказы – заказы преподавателей на новую литературу.

Для однозначного определения записей в каждом из отношений выделен первичный ключ (простой или составной).

Внешние ключи для отношений БД:

в отношениях Экземпляр и Заказы - это ключ ISBN;

в отношениях ЗаменаЭкземпляров и Списанные экземпляры - это ключ Шифр

В отношениях Экземпляр и Сотрудники - это ключ Номер отдела

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

· неиденцифицирующие связи;

· иденцифицирующие связи;

· связи многие-ко-многим

Связь между сущностями Отделы и Сотрудники библиотеки неидентифицирующая, не разрешающая присутствие нулей, т.к. каждый сотрудник закреплен за определенным отделом. Тип связи 1 ко многим, т.к. в одном отделе могут работать много сотрудников. и 1 ко многимттствие нулейтрудники библиотеки

Связь между сущностями Отделы и Экземпляр неидентифицирующая, не разрешающая присутствие нулей, т.к. каждый экземпляр закреплен за определенным отделом. Тип связи 1 ко многим, т.к. в одном отделе могут храниться много экземпляров.

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

Связь между сущностями Книга и Экземпляр неидентифицирующая, не разрешающая присутствие нулей, т.к. каждый экземпляр это зарегистрированная книга. Тип связи 1 ко многим, т.к. в одна книга может быть зарегистрирована как несколько экземпляров.

Связь между сущностями Замена экземпляров и Экземпляр идентифицирующая, т.к. для замены экземпляров необходима информация о нем. Тип связи 1 к одному, т.к. замена осуществляется для одного экземпляра.

Связь между сущностями Списание экземпляров и Экземпляр идентифицирующая, т.к. для списания экземпляров необходима информация о нем. Тип связи 1 к одному, т.к. списание осуществляется для одного экземпляра.

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

Связь между сущностями Книги и Заказы идентифицирующая, т.к. для заказа книг необходима информация о заказе. Тип связи 1 ко многим, т.к. одна книга может быть во многих заказах.

Связь между сущностями Преподаватели и Экземпляр многие-ко-многим, т.к. один преподаватель может пользоваться многими экземплярами, а один экземпляр может быть у многих преподавателей.

Связь между сущностями Студенты и Экземпляр многие-ко-многим, т.к. один студент может пользоваться многими экземплярами, а один экземпляр может быть у многих студентов.

Связь между сущностями Сотрудники библиотеки и Экземпляр многие-ко-многим, т.к. один сотрудник библиотеки может пользоваться многими экземплярами, а один экземпляр может быть у многих сотрудников библиотеки.

Разрешение связей многие-ко-многим осуществляется на физическом уровне. Были введены дополнительные зависимые сущности Пользование библиотекой (рис. 15).

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

Все не ключевые атрибуты функционально полно и не транзитивно зависят от первичного ключа. Следовательно, отношение находится в БКНФ.

Все вышеизложенные отношения функционально полно зависят от первичного ключа.

 

Рисунок 14 – Информационная модель

        

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

Таким образом, все отношения находятся в БКНФ.

Рисунок 15 – Разрешение связей «многие-ко-многим» на физическом уровне

 

Реализация ссылочной целостности:

· при добавлении новой записи в зависимую таблицу значение внешнего ключа должно присутствовать в главной таблице;

· При изменении информации о каком-либо отделе из таблицы «Отделы» в таблицах «Сотрудники библиотеки», «Периодические издания» и «Экземпляры» информация будет автоматически меняться (каскадное обновление), удалять запрещено;

· При изменении информации о каком-либо сотруднике из таблицы «Сотрудники» в таблице «Пользование библиотекой» информация будет автоматически изменяться (каскадное обновление);

· При удаление информации о каком-либо сотруднике из таблицы «Сотрудники» в таблице «Пользование библиотекой» информация о нем остается.

· В таблице «Книга» разрешено изменение записей (каскадное обновление), удаление данных из этой таблицы запрещается (запрет удаления);

· В таблице «Экземпляр» разрешено изменение записей (каскадное обновление), удаление данных из этой таблицы запрещается (запрет удаления);

· В таблице «Студенты» при изменении информации о студенте происходит каскадное обновление данных. Разрешается удаление информации только в случае, когда на данную информацию нет ссылок в других связанных таблицах;

· В таблице «Преподаватели» при изменении данных происходит каскадное обновление. Разрешается удаление информации только в случае, когда на данную информацию нет ссылок в других связанных таблицах;

· В таблицах «Списанные экземпляры» и «Замена экземпляров» не разрешается удаление и изменение записей;

· В таблице «Заказы» разрешается обновление.

· В таблице «Периодическая литература» разрешено изменение записей (каскадное обновление), удаление данных из этой таблицы запрещается (запрет удаления).

Рисунок 16 – Физическая модель данных

 

Типы данных в физической модели

Первоначально тип данных можно указать при добавлении нового атрибута. При помощи физической модели это также можно сделать, причем в этом случае типы данных будут соответствовать типам конкретной СУБД. С помощью нажатия правой клавишей мыши по таблице на физической модели вызываем контекстное меню, в котором выбираем пункт Columns. Появится окно Columns, в разделе Datatype которого выбираем тип данных для каждой колонки таблицы (рис. 17). Также в этом окне можно установить значения по умолчанию (раздел Default).

Рисунок 17 – Типы данных для колонок

 

 

Примеры выбора типов данных

1. Рассмотрим таблицу «Книга». Ключевое поле этой таблицы ISBN содержит номер книг. Номер представляет собой набор цифр и разделяющих их дефисов (например, 5-414-524316-41). Следовательно, тип данных поля ISBN должен быть строковым с длиной не менее 15 символов. Выбираем тип varchar(20).

2. В таблице «Пользование библиотекой» имеется поле «Дата выдачи». Это поле содержит число, месяц, год даты, когда была выдана книга. Тип данных для неё ­ – datetime.

3. Рассмотрим таблицу «Сотрудники библиотеки». Ключевое поле этой таблицы (табельный номер) представляет собой номер, который присваивают каждому сотруднику при принятии на работу. Он представляет собой набор цифр (например, 2431). Следовательно, тип данных поля табельный номер должен быть числовым целым. Выбираем тип int.

 

Вопросы:

1. Какие уровни представления данных существуют в ERwin?

2. Какой уровень зависит от конкретной реализации СУБД?

3. Как добавить новую сущность на диаграмму?

4. Как добавить атрибуты в сущность?

5. Как разрешается связь многие-ко-многим?

6. Как можно установить тип данных атрибутов?

7. В чем отличие идентифицирующих и неидентифицирующих связей?

8. Что такое связь категоризации? Как её добавить?

9. Что такое ссылочная целостность?

10. Опишите процесс нормализации базы данных.

 

 

Задание

 

Разработать в ERwin логическую и физическую модели информационной системы.

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...