Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Задание 20.docx
Скачиваний:
18
Добавлен:
25.09.2019
Размер:
232.65 Кб
Скачать

Задание 20 Проект АПТЕЧНЫЙ СКЛАД

Проектируется база данных, предназначенная для осуществление оптовую продажу лекарственных препаратов различным аптекам республики. Это аптека имеет заявки. Заявки обрабатываются аптеками. Лекарство имеет закупки. Заявка соответствует этим закупкам. Описываемую предметную область назовем АПТЕКНЫЙ СКЛАД. В ней могут быть выделены четыре сущности: лекарство, аптека, заявка, закупка.

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

АПТЕКА

В рассматриваемой предметной области АПТЕЧНЫЙ СКЛАД можно выделить три связи.

  1. АПТЕКА – ОБРАБАТЫВАЕТ – ЗАЯВКА

  2. ЗАЯВКА – СООТВЕТСТВУЕТ – ЗАКУПКА

  3. ЛЕКАРСТВО – ИМЕЕТ – ЗАКУПКА

На ER – диаграмме связь изображается ромбом. Например,

ОБРАБАТЫВАЕТ

Рассмотрим типы связей и понятие класс принадлежности сущности 1 – 3.

АПТЕКА

ЗАЯВКА

ОБРАБАТЫВАЕТ

2.

ЛЕКАРСТВО

ЗАКУПКА

ИМЕЕТ

СООТВЕТСТВ

3.

ЗАКУПКА

ЗАЯВКА

Рис. 1.1. ER – диаграммы связи 1:М с учетом класс принадлежности сущности

  1. В этом случае тип «один-ко-многим» (1:М) и класс принадлежности обеих сущностей обязательный.

  2. Тип « один-ко-многим» (1:М) и класс принадлежности сущности ЛЕКАРСТВА необязательный, а сущность ЗАКУПКА обязательный.

  3. Тип « один-ко-многим» (1:М) и класс принадлежности обеих сущностей обязательный.

Тогда ER – диаграмма предметной области АПТЕЧНЫЙ СКЛАД будет иметь вид, представленный на рис. 1.2.

Соответствует обрабатывает

ЗАКУПКА

ЗАЯВКА

АПТЕКА

ЛЕКАРСТВО

ИМЕЕТ

Рис. 1.2. Пример ER – модели предметной области АПТЕЧНЫЙ СКЛАД.

Каждая из четырех сущностей приведенной ER – модели может быть описана своим набором атрибутов (рис. 1.3.)

АПТЕКА

Номер аптеки (НОМ_АПТ)

Название аптеки (НАЗ_АПТ)

Адрес аптеки (АДД_АПТ)

Номер телефона (НОМ_ТЕЛ)

ЗАЯВКА

Номер заявки (НОМ_ЗАЯВ)

Дата составления заявки (ДАТА_СОСТ_ЗАЯВ)

Номер аптеки (НОМ_АПТ)

Дата выполнения заявки (ДАТА_ВЫП_ЗАЯВ)

ЗАКУПКА

Номер заявки (НОМ_ЗАЯВ)

Код лекарство (КОД_ЛЕК)

Количество (КОЛ-ВО)

ЛЕКАРСТВО

Код лекарства (КОД_ЛЕК)

Название лекарства (НАЗ_ЛЕК)

Производитель (ПР_ЛЬ)

Цена (ЦЕНА)




Примечание. Ключевые атрибуты выделены жирным шрифтом.

ER- модель совокупности с наборами атрибутов сущностей может служить примером концептуальной модели предметной области или концептуальной схемы базы данных.

В связи с наглядностью представления концептуальных схем баз данных ER-модели получили широкое распространение в CASE – средствах. Эти средства предназначены для автоматизированного проектирования реляционных баз данных.

CASE – средства позволяют строить ER – диаграмму в реальном масштабе времени, что дает возможность наглядно изучать концептуальную модель данных и перестраивать ее соответственно поставленным целям и имеющимся ограничениям.

Преобразование er – модели в реляционную

Концептуальные модели позволяют более точно представить предметную область, чем реляционные и другие более ранние модели. Но в настоящее время существует немного систем управления базами данных, поддерживающих эти модели. На практике наиболее распространены системы, реализующие реляционную модель. Поэтому необходим метод перевода концептуальной модели в реляционную. Такой метод основывается на формировании набора предварительных таблиц из ER – диаграмм.

Для каждой сущности создается таблица. Причем каждому атрибуту сущности соответствует столбец таблицы.

Правила генерации таблиц из ER – диаграмм опираются на два основных фактора – тип связи и класс принадлежности сущности. Изложим их.

Правило 4

Если связь типа 1:М и класс принадлежности сущности на стороне М является обязательным, то необходимо построить таблицу для каждой сущности. Первичный ключ сущности должен быть первичным ключом соответствующей таблицы. Первичный ключ сущности на стороне 1 добавляется как атрибут в таблицу для сущности на стороне М.

1) ER – диаграмме связи 1:М, представленной на рис.1.2, класс принадлежности сущности ЗАЯВКА является обязательным. Тогда согласно правилу 4 должны быть сгенерированы две таблицы следующей структуры:

АПТЕКА

НОМ_АПТ

НАЗ_АПТ

АДД_АПТ

НОМ_ТЕЛ

ЗАЯВКА

НОМ_ЗАЯВ

ДАТА_СОСТ_ЗАЯВ

НОМ_АПТ

ДАТА_ВЫП_ЗАЯВ

Связь между указанными таблицами будет иметь вид

НОМ_АПТ

НАЗ_АПТ

АДД_АПТ

НОМ_ТЕЛ


НОМ_ЗАЯВ

ДАТА_СОСТ_ЗАЯВ

НОМ_АПТ

ДАТА_ВЫП_ЗАЯВ

В случае связи 1:М одному экземпляру объекта А может соответствовать несколько экземпляров объекта В, но каждому экземпляру объекта В соответствует не более чем один экземпляр объекта А.

Примечание. Если внешний ключ представляет связь 1:М, то должен быть разрешены его дублирующие значения.

2) ER – диаграмме связи 1:М, представленной на рис.1.2, класс принадлежности сущности ЗАКУПКА является обязательным. Тогда согласно правилу 4 должны быть сгенерированы две таблицы следующей структуры:

ЗАЯВКА

НОМ_ЗАЯВ

ДАТА_СОСТ_ЗАЯВ

НОМ_АПТ

ДАТА_ВЫП_ЗАЯВ

ЗАКУПКА

НОМ_ЗАЯВ

КОД_ЛЕК

КОЛ-ВО

Связь между указанными таблицами будет иметь вид

НОМ_ЗАЯВ

ДАТА_СОСТ_ЗАЯВ

НОМ_АПТ

ДАТА_ВЫП_ЗАЯВ

НОМ_ЗАЯВ

КОД_ЛЕК

КОЛ-ВО



В случае связи 1:М одному экземпляру объекта А может соответствовать несколько экземпляров объекта В, но каждому экземпляру объекта В соответствует не более чем один экземпляр объекта А.

Примечание. Если внешний ключ представляет связь 1:М, то должен быть разрешены его дублирующие значения.

3) ER – диаграмме связи 1:М, представленной на рис.1.2, класс принадлежности сущности ЗАКУПКА является обязательным. Тогда согласно правилу 4 должны быть сгенерированы две таблицы следующей структуры:

ЗАКУПКА–ЛЕКАРСТВО

НОМ_ЗАЯВ

КОД_ЛЕК

КОЛ-ВО

НАЗ_ЛЕК

ЛЕКАРСТВО

КОД_ЛЕК

НАЗ_ЛЕК

ПР_ЛЬ

ЦЕНА

Связь между указанными таблицами будет иметь вид

НОМ_ЗАЯВ

КОД_ЛЕК

КОЛ-ВО

НАЗ_ЛЕК

КОД_ЛЕК

НАЗ_ЛЕК

ПР_ЛЬ

ЦЕНА

В результате получим реляционную модель для ER–модели предметной области АПТЕЧНЫЙ СКЛАД.

ЛЕКАРСТВО

КОД_ЛЕК

НАЗ_ЛЕК

ПР_ЛЬ

ЦЕНА

ЗАКУПКА

НОМ_ЗАЯВ

КОД_ЛЕК

КОЛ-ВО

НАЗ_ЛЕК



ЗАЯВКА

НОМ_ЗАЯВ

ДАТА_СОСТ_ЗАЯВ

НОМ_АПТ

ДАТА_ВЫП_ЗАЯВ



АПТЕКА

НОМ_АПТ

НАЗ_АПТ

АДД_АПТ

НОМ_ТЕЛ



Рис. Реляционная модель предметной области АПЕЧНЫЙ СКЛАД