Слайд 1Пример построения модели «сущность-связь»
Лекция 7
Слайд 2В процессе построения диаграммы "сущность-связь" можно выделить несколько этапов:
Определение списка
сущностей выбранной предметной области
Определение списка атрибутов сущностей
Описание связей между сущностями (степени, классы принадлежности связей, а также атрибуты связей, если они необходимы)
Организация данных в виде диаграммы "сущность-связь"
Слайд 3В качестве примера построим диаграмму, отображающую связь данных для информационной системы
учета продажи продуктов в магазине. БД должна хранить информацию о продуктах, поставляемых в магазин, их ежедневной продаже, заказах на поставку продуктов, а также о поставщиках продуктов.
Составим список сущностей, необходимых для реализации поставленной задачи:
Слайд 41. Продукты
Для этой сущности необходимы следующие атрибуты:
Код продукта – уникальный
идентификатор, ключевой атрибут
Продукт – название продукта
Единица измерения – литры, килограммы, штуки и т.п.
Срок хранения в днях – для определения даты окончания срока годности продукта
Условия хранения – температура, влажность и т.п.
Слайд 52. Поставщики
Код поставщика – уникальный идентификатор, ключевой атрибут
Поставщик – название
организации или ФИО физического лица
Код города – выделим отдельно город, где находится поставщик, для удобства дальнейшей работы (например, для поиска)
Адрес – поскольку город выделен в отдельный атрибут, то в адресе остается улица и дом (а также квартира – для физического лица)
ФИО директора
Телефон
Факс
Слайд 63. Продажи
Дата продажи
Код продукта – какой именно продукт был продан
Количество – сколько продано этого продукта в тех единицах измерения, которые указаны для этого продукта в сущности Продукт
Цена продажи – цена при продаже за единицу продукта
Слайд 74. Города
Города – поскольку мы выделили отдельно город из адреса поставщика,
то возникает необходимость в этой сущности. Где Код города – уникальный идентификатор, ключевой атрибут. Город – еще один атрибут.
Слайд 8Сократив для удобства названия атрибутов, получим список сущностей:
Продукты(КодПрод, Продукт, ЕдИзм, СрокХран(дней),
УсловияХран)
Поставщики(КодПост, Поставщик, КодГорода, Адрес, ФИОдиректора, Телефон, Факс)
Продажи(ДатаПродажи, КодПрод, Количество, ЦенаПродажи) обратите внимание, что в этой сущности ключ составной, поскольку каждый день продается множество продуктов, и конкретный продукт может быть продан в разные дни
Города(КодГорода, Город)
Слайд 9Связи, существующие между описанными выше сущностями:
1. Продукты в магазин поставляются поставщиками,
т.е. существует связь M:N «Поставляют» между сущностями Продукты и Поставщики. Эта связь имеет следующие атрибуты:
Дата поставки
Код поставщика – какой поставщик поставил этот продукт
Код продукта – какой именно продукт был поставлен
КоличествоП – сколько поставлено этого продукта в тех единицах измерения, которые указаны для этого продукта в сущности Продукт
Цена поставки – цена при поставке за единицу продукта
Дата изготовления – дата изготовления продукта
Ключом будет составной атрибут: Дата поставки, Код поставщика, Код продукта
Слайд 102. Продукты должны быть заказаны поставщикам, т.е. существует связь M:N «Заказаны»
между сущностями Продукты и Поставщики. Эта связь имеет следующие атрибуты:
Дата заказа
Код поставщика – какому поставщику заказан этот продукт
Код продукта – какой именно продукт был заказан
КоличествоЗ – сколько поставлено этого продукта в тех единицах измерения, которые указаны для этого продукта в сущности Продукт
Ключом будет составной атрибут: Дата заказа, Код поставщика, Код продукта
Слайд 113. В магазине происходит продажа продуктов, т.е. существует связь N:1 «Происходит»
между сущностями Продажи и Продукты.
4. Поставщики находятся в определенном городе, т.е. существует связь N:1 «Находятся» между сущностями Поставщики и Города.
Слайд 12Диаграмма «сущность-связь» (ER-модель) учета продажи продуктов в магазине
Слайд 13Постройте свою ER-модель по следующей схеме данных
Схема данных БД Предприятие общественного
питания
Слайд 14Создайте в MS Access БД по указанной на предыдущем слайде схеме
данных
Самостоятельно подберите типы данных
Свяжите поля в схему данных
Заполните таблицы (не менее 3х записей в каждой)
Создайте три запроса: 1) выбрать информацию о блюдах с сортировкой названия блюда по алфавиту; 2) выбрать продукты, поставляемые одним из поставщиков (указать конкретного поставщика); 3) выбрать блюда, которые потреблялись в феврале текущего года с сортировкой по алфавиту.