Проектирование многопользовательской информационной системы "Университетская библиотека"

Курсовой проект - Компьютеры, программирование

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

?но полно зависят от первичного ключа, т.е. первичный ключ является детерминантом.

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

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

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

В таблице Книга разрешено изменение записей (каскадное обновление), удаление данных из этой таблицы запрещается специальным триггером (запрет удаления), т.к. эта таблица содержит информацию обо всех книгах, которые были когда-либо изданы;

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

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

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

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

В таблице Заказы разрешается обновление записей. Удаление записей не допускается, т.к. данные этой таблицы используются для построения итоговых отчетов о работе библиотеки.

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

Типы данных

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

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

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

Для приложения были разработаны следующие триггеры:срабатывает при вставке нового элемента в таблицу Отделы. Он проверяет номер отдела, который должен быть больше 9 и меньше 15;проверяет права на удаление пользователем записи из таблицы Пользование_библиотекой2. Если пользователь не является владельцем базы данных, то прав на удаление он не имеет. Запись удалена не будет;запрещает добавлять записи в таблицу Пользование_библиотекой2 в воскресение;записывает в отдельную таблицу информацию о записях, добавленных в таблицу Сотрудники библиотеки, чтобы было легче проследить за процессом изменения данных в таблице;записывает в отдельную таблицу информацию о записях, добавленных в таблицу Студенты, чтобы было легче проследить за процессом изменения данных в таблице;записывает в отдельную таблицу информацию о записях, добавленных в таблицу Преподаватели, чтобы было легче проследить за процессом изменения данных в таблице;_otchislenia_Studentov запрещает изменять запись о студенте, у которого год отчисления больше значения текущего года;записывает в отдельную таблицу информацию о записях, удаленных из таблицы Преподаватели;записывает в отдельную таблицу информацию о записях, удаленных из таблицы Сотрудники библиотеки

ER-диаграмма физического уровня показана в приложении 3 (рисунок 12).

 

Рисунок 12 - ER-диаграмма физического уровня

 

Определение представлений, хранимых процедур серверной компоненты. ER-диаграмма в режиме отображения представлений

Представление (View) для конечных пользователей выглядит как таблица, но при этом само не содержит данных, а лишь представляет данные, расположенные в таблице. Физически представление реализовано в виде SQL-запроса, на основе которого производится выборка данных из одной или нескольких таблиц или представлений.

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

Для приложения были ра?/p>