Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
8 семестр / Содержание ПЗ.docx
Скачиваний:
10
Добавлен:
18.02.2023
Размер:
266.33 Кб
Скачать

2.5 Графическое представление связей между внешними и первичными ключами

По результатам нормализации, определения первичных и внешних ключей, связей между сущностями, была получена схема реляционной базы данных, представленная в приложении B. Полученная ER-диаграмма построена по методу Crow's Foot (рус. «воронья лапка»). Средства моделирования Crow's Foot специально разработаны для построения реляционных информационных систем.

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

Связь изображается линией, которая связывает две сущности, участвующие в отношении. Степень конца связи указывается графически, множественность связи изображается в виде «вилки» на конце связи. Модальность связи так же изображается графически — необязательность связи помечается кружком на конце связи. Именование обычно выражается одним глаголом в изъявительном наклонении настоящего времени: «имеет», «принадлежит» и т. д.; или глаголом с поясняющими словами: «включает в себя», и т. п. Наименование может быть одно для всей связи или два для каждого из концов связи. Во втором случае, название левого конца связи указывается над линией связи, а правого — под линией. Каждое из названий располагаются рядом с сущностью, к которой оно относится.

Атрибуты сущности записываются внутри прямоугольника, изображающего сущность, и выражаются существительным в единственном числе (возможно, с уточняющими словами). Среди атрибутов выделяется ключ сущности — неизбыточный набор атрибутов, значения которых в совокупности являются уникальными для каждого экземпляра сущности.

3 Создание спроектированной базы данных

Для реализации спроектированной базы данных была выбрана система управления базами данных MS SQL Server 2019. Это обусловлено тем, что, данная СУБД имеет большую функциональность, множество средств для поддержки и работы с ней, развитую инфраструктуру для интеграции баз данных в пользовательские приложения.

В создаваемой базе данных будут использоваться следующие типы данных:

  • int – целочисленный тип, размер – 4 байта;

  • nvarchar – строковый тип переменной длины;

  • bit – битовый тип, используется как логический тип;

  • date – тип, определяющий дату;

  • smallint – целочисленный тип, размер – 2 байта.

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

Таблица «doctor» содержит список всех врачей, работающих в поликлинике. Ее структура приведена в таблице 3.1.

Таблица 3.1 – Характеристика атрибутов таблицы «doctor»

Имя атрибута

Тип

Описание

id

int

Идентификатор врача. Ключевой атрибут

surname

nvarchar(32)

Фамилия врача

name

nvarchar(32)

Имя врача

middlename

nvarchar(32)

Отчество врача

competence

nvarchar(32)

Категория врача

experience

date

Стаж работы

birthday

date

Дата рождения

Таблица «region» содержит информацию о участках, которые относятся к поликлинике и идентификаторы врачей, работающих на этих участках. Ее структуру приведена в таблице 3.2.

Таблица 3.2 – Характеристика атрибутов таблицы «region»

Имя атрибута

Тип

Описание

id

int

Идентификатор участка. Ключевой атрибут

doctor_id

int

Идентификатор работающего на участке врача

description

nvarchar(128)

Список улиц и домов, закрепленных за участком

Таблица «patient» служит для хранения основной информации о пациентах. Ее структура приведена в таблице 3.3.

Таблица 3.3 – Характеристика атрибутов таблицы «patient»

Имя атрибута

Тип

Описание

id

int

Идентификатор пациента. Ключевой атрибут

surname

nvarchar(32)

Фамилия пациента

name

nvarchar(32)

Имя пациента

middlename

nvarchar(32)

Отчество пациента

sex

nvarchar(1)

Пол

birthday

date

Дата рождения

address

nvarchar(64)

Адрес

insurance

nvarchar(16)

Номер полиса страхования

registration

date

Дата регистрации

Таблица «timetable» служит для хранения информации о времени работы врачей. Ее структура приведена в таблице 3.4.

Таблица 3.4 – Характеристика атрибутов таблицы «timetable»

Имя атрибута

Тип

Описание

id

int

Идентификатор расписания. Ключевой атрибут

doctor_id

int

Идентификатор врача

time

nvarchar(128)

Время работы врача

office

smallint

Номер кабинета

Таблица «visit» служит для хранения информации о посещениях пациентами врачей, жалобах, диагнозах и назначениях. Ее структура приведена в таблице 3.5.

Таблица 3.5 – Характеристика атрибутов таблицы «visit»

Имя атрибута

Тип

Описание

id

int

Идентификатор посещения. Ключевой атрибут

date

date

Дата посещения

patient_id

int

Идентификатор пациента

doctor_id

int

Идентификатор врача

complaint

nvarchar(256)

Жалобы пациента

diagnosis

nvarchar(256)

Диагноз

therapy

nvarchar(256)

Назначения врача

sickleave

date

Дата окончания больничного

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

Соседние файлы в папке 8 семестр