Логическая модель базы данных



Логическая модель представлена на рисунке 2.

 

Рисунок 2 Логическая модель базы данных

 

В базе данных имеется 6 таблиц. Первая самая главная таблица "Отделения", которая является главной для таблиц "Персонал", "Регистрация" и "Диагнозы", с которыми она связана по полю "Код отделения" и имеет место связь "1-ко многим".

 

Создание физической модели предметной области

Физическая модель содержит всю информацию, необходимую для реализации конкретной БД. Трансформационная модель содержит информацию для реализации отдельного проекта, который может быть частью общей ИС и описывать подмножество предметной области. ERwin поддерживает ведение отдельных проектов, позволяя п роектировщику выделять подмножество модели в виде предметных областей (Subject Area). Трансформационная модель позволяет проектировщикам и администраторам БД лучше представлять, какие объекты БД хранятся в словаре данных, и проверить, насколько физическая модель данных удовлетворяет требованиям к ИС. Модель СУБД автоматически генерируется из трансформационной модели и является точным отображением системного каталога СУБД. ERwin непосредственно поддерживает эту модель путем генерации системного каталога. Физическая модель БД «Поликлиника» (Рис. 3).

Рисунок 3 Физическая модель предметной области

 

Создание базы данных в MS SQL Server

Запускаем «MS SQL Server 2008». В панели «Обозреватель объектов» щелчком правой кнопки мыши на объекте «Базы данных» вызываем контекстное меню. В появившемся списке выбираем «Создать Базу данных».

Рисунок 4 Создание БД

В появившемся окне в строке «Имя базы данных» задаем имя «Поликлиника».

 

Рисунок 5 Окно «Создание базы данных»

 

Создание таблиц

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

Рисунок 6 Создание таблицы

Далее необходимо задать поля таблицы их тип и количество символов, а также задать ключевое поле которое понадобится для связывания таблиц.

Рисунок 7 Заполнение атрибутов

Таким же образом создадим таблицы «Отделения», «Должности», «Пациенты», «Диагнозы» и заполним их атрибуты.

 

Рисунок 8 Таблицы БД «Поликлиника»

Нормализация отношений

Нормализация – это процесс проектирования базы данных с целью исключения аномалий модификаций, избыточности данных и приведения отношений к нормальным формам.

Аномалии модификации – последствия, которые могут возникнуть вследствие изменения отношения (таблицы).

Аномалии устраняются путем разбиения отношения на 2 и более новых отношений. Аномалии делятся на 2 основных вида: аномалия удаления, аномалия вставки.

Можно сказать, что в данном курсовом проекте все таблицы находятся в 1НФ, так как все они удовлетворяют требованиям, необходимым для того, чтобы таблица считалась отношением. Главным образом, это требование атомарности.

Отношение находится во 2НФ, если оно находится в 1НФ и все не ключевые атрибуты в отношении зависят только от всего ключа в целом.

Отношение находится в 3НФ, если отношение находится во 2НФ и не имеет транзитивных зависимостей.

В данном курсовом проекте все таблицы находятся в 3НФ. Хотя в начале курсового проекта предполагалось, что таблица "Персонал" будет включать в себя атрибуты "Должность" и "Оклад", что говорило бы о наличие транзитивной зависимости. В результате нормализации таблица "Персонал" была разбита на два отношения "Персонал" и "Должности", которые теперь находятся в 3НФ.

Отношение находится в НФБК, если оно находится в 3НФ и каждый детерминант является ключом-кандидатом.

Можно сказать, что во всех таблицах данной базы данных, кроме первичных ключей ключей-кандидатов не наблюдается, поэтому нельзя сказать, что они находятся в НФБК.

В 4НФ таблицы не могут находиться, так как они не находятся в НФБК. Таким образом, все отношения находятся в 3НФ.

 

Создание связей

Для создания связей таблиц необходимо щелкнуть правой кнопкой мыши по пункту «Диаграммы баз данных» и выбрать пункт «Создать диаграмму базы данных», после чего выбрать все таблицы, нажав кнопку «Добавить». Затем нужно произвести связывание таблиц по ключевым полям (Рис. 9).

Рисунок 9 Связи таблиц

 

Создание триггеров

Триггер – это набор инструкций SQLServer, который выглядит и действует подобно хранимой процедуре, но триггер нельзя вызвать с помощью команды EXEC. Триггеры активизируются при выполнении пользователем определенной инструкции Transact-SQL.

Существует два вида триггеров:

· DML запускаются с помощью инструкций INSERT, UPDATE или DELETE;

· DDL с помощью инструкций CREATE, ALTER, DROP.

Если вы не хотите, чтобы триггеру передавались записи, нужно добавить команду «ROLLBACK» в соответствующее место в коде. Команда «ROLLBACK» указывает серверу остановить обработку модификации и запретить транзакцию.

Существует также команда «RAISEERROR» с помощью которой система может отправить сообщение об ошибке пользователю.

Триггеры «INSERT» запускаются при каждой попытке создать новую запись в таблице с помощью команды «INSERT». При попытке вставить новую запись в таблицу SQL Server копирует эту запись в таблицу триггеров БД и специальную таблицу inserted.

Для демонстрации работы триггера «INSERT» была использована таблица «Пациенты». Триггер запрещает внесение значения в поле «Дата поступления», если дата поступления не равна сегодняшней дате (Рис. 10).

 

 Рисунок 10 Триггер «INSERT»

Триггеры «DELETE» используются для предотвращения удаления данных пользователями из БД. При наличии триггера Delete SQLServer переносит удаляемую запись в логическую таблицу «deleted», т.е. записи не исчезают полностью, и на них можно ссылаться в коде.

 

Создание пользователей

Для эффективного управления и обеспечения безопасности БД в SQL сервере можно создавать пользователей с различными правами доступа и с функциями.

Для данной базы создадим 3 пользователя с аутентификацией в SQL Server: Главный врач, который может, как просматривать, так и добавлять данные в базу. Администратор, который может управлять базой и создавать резервные копии, и Врач который может только редактировать данные о пациентах.

Пользователи создаются во вкладке «Безопасность», в графе «Пользователи». Для создания Нового пользователя нужно кликнуть правой кнопкой мыши по графе «Пользователи» и нажать «Создать пользователя». После чего, в открывшемся окне, нужно ввести Имя пользователя: в данном случае «Главный врач» и установить Имя входа.

Рисунок 11 Окно создания нового пользователя

В списке «Членство в роли базы данных» разрешим этому пользователю смотреть и изменять данные в БД Поликлиника (Рис. 11). На этом создание пользователя завершено.

При создании пользователя «Администратор поликлиники»,  начальные действия будут такими же. Зададим все права (Рис. 12).

Рисунок 12 Создание пользователя «Администратор»

 


Дата добавления: 2019-03-09; просмотров: 334; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!