Материал: Решение задач в области техносферной безопасности с использованием пакетов прикладных программ. Сазонова С.А., Колодяжный С.А

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

5. Количество потребляемых стройками строительных материалов ПОТР их распределение между заводами.

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

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

а) без учета распределения строительных материалов с заводов по стойкам (обезличенное хранение) с использованием бинарных связей;

б) с учетом распределения строительных материалов с заводов по стойкам (адресное хранение) с использованием трехсторонних связей;

2) составить совокупность отношений как с учетом, так и без учета распределения строительных материалов по заводам и стойкам. Значения элементов доменов отношений, не указанные в индивидуальном задании, вымышлены.

Варианты индивидуальных заданий (табл. 12.1)

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

Таблица 12.1

Варианты индивидуальных заданий

1. Варианты поставок стройматериалов заводами-поставщиками:

1) з_жби ф_бл • сил_з с_кир • кер_з каф_п • дер_з о_бл.

2) з_жби ф_бл • сил_з с_кир, кер_п • кер_з каф_п, кр_к, с_кир • дер_з о_бл, пар.

3) з_жби ⎯ ф_бл • сил_з ⎯ с_кир, кр_к • кер_з ⎯ каф_п, с_кир, кер_п •дер_з ⎯ о_бл, пар.

4) з_жби ⎯ ф_бл • сил_з ⎯ с_кир • кер_з ⎯ с_кир • дер_з ⎯ о_бл.5) з_жби ⎯ ф_бл • сил_з ⎯ с_кир • кер_з ⎯ кер_п, каф_п, кр_к •дер_з ⎯ о_бл, пар.

6) з_жби ⎯ жел_п, ф_бл • сил_з ⎯ с_кир • кер_з ⎯ каф_п • дер_з ⎯о_бл.

7) з_жби ⎯ жел_п • сил_з ⎯ с_кир • кер_з ⎯ каф_п • дер_з ⎯ о_бл.

8) з_жби ⎯ жел_п • сил_з ⎯ с_кир • кер_з ⎯ каф_п, кр_к, с_кир, кер_п •дер_з ⎯ о_бл, пар.

9) з_жби ⎯ жел_п, ф_бл • сил_з ⎯ с_кир • кер_з ⎯ каф_п, кер_п •дер_з ⎯ пар.

10) з_жби ⎯ жел_п • сил_з ⎯ с_кир • кер_з ⎯ с_кир • дер_з ⎯ о_бл.

2. Варианты потребления стройками стройматериалов:

1) с_кир ⎯ д_сад • ф_бл ⎯ жил_д • каф_п ⎯ плк • о_бл ⎯ шк.

2) с_кир ⎯ д_сад, жил_д • ф_бл ⎯ жил_д • каф_п ⎯ плк • о_бл ⎯ шк •кр_к ⎯ д_сад • пар ⎯ плк • кер_п ⎯ шк.

3) с_кир ⎯ шк, д_сад • ф_бл ⎯ жил_д • каф_п ⎯ плк • о_бл ⎯ шк,жил_д • кр_к ⎯ д_сад • пар ⎯ плк • кер_п ⎯ плк.

4) с_кир ⎯ шк, плк • ф_бл ⎯ жил_д • кр_к ⎯ д_сад • кер_п ⎯ жил_д.

5) с_кир ⎯ шк, д_сад • ф_бл ⎯ жил_д • каф_п ⎯ плк • о_бл ⎯ шк.

6) с_кир ⎯ д_сад • жел_п ⎯ жил_д • каф_п ⎯ плк • о_бл ⎯ шк.

7) с_кир ⎯ д_сад • жел_п ⎯ жил_д • каф_п ⎯ плк • о_бл ⎯ шк •кр_к ⎯ д_сад • пар ⎯ плк.

8) с_кир ⎯ шк, д_сад • жел_п ⎯ жил_д • каф_п ⎯ плк; о_бл ⎯ шк, жил_д • кр_к ⎯ д_сад • пар ⎯ плк.

9) с_кир ⎯ шк, плк • жел_п ⎯ жил_д • кр_к ⎯ д_сад • кер_п ⎯ жил_д.

10) с_кир ⎯ шк, д_сад • жел_п ⎯ жил_д • каф_п ⎯ плк • о_бл ⎯ шк • кр_к ⎯ жил_д • кер_п ⎯ плк.

3. Варианты распределения силикатного кирпича с_кир между заводами и стройками (табл. 12.2).

Таблица 12.2

Варианты распределения силикатного кирпича с_кир

между заводами и стройками

Пример выполнения задания на проектирование

базы данных обезличенным хранением

Инфологическое проектирование

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

для сущности ЗАВОД - Н_ЗАВ, А_ЗАВ, ТЛФ_Д;

для сущности СТРОЙМАТ - Н_СТРМ, ВЕС, ГАБАРИТ, ЦЕНА;

для сущности СТРОЙКА - Н_СТР, ТЛФ_П, А_СТР.

Очевидно, что из этих атрибутов ключевыми будут соответственно: Н_ЗАВ, Н_СТРМ, Н_СТР. В соответствии со своим индивидуальным заданием, запишем значения ключевых атрибутов (это будут представители экземпляров сущностей) под именами своих сущностей и укажем линиями связи (экземплярами связей), какой завод что производит и какая стройка что потребляет. В некоторых вариантах индивидуальных заданий значения ключевых атрибутов сущности СТРОЙМАТ могут повториться. В этом случае повторяющееся значение повторно записывать не следует, а линию связи нужно провести к уже имеющемуся значению. Это будет означать, что два завода изготавливают одинаковый стройматериал. Если в строке потребностей строек появится название стройматериала, которого нет под именем сущности СТРОЙМАТ, то это название следует добавить в имеющуюся совокупность стройматериалов. Над каждой линией связи, которая указывает на сам факт связи, укажем числовую характеристику связи (сколько единиц стройматериала производится и потребляется).

Пусть задан вариант производства заводами строительных материалов: дер_з пар, о_бл; з_жби ф_бл; кер_з кр_к, кер_п, с_кир, каф_п; сил_з с_кир; и вариант потребления стройками строительных материалов:

ф_бл жил_д; с_кир жил_д, д_сад; каф_п плк; о_бл шк. Тогда, в соответствии с вышеизложенным, получится ER-диаграмма экземпляров, показанная на рис. 12.1.

Из диаграммы (рис. 12.1) видно, что степень бинарной связи ПРОИЗВ - M:N. Классы принадлежности сущностей ЗАВОД и СТРОЙМАТ обязательные по отношению к типу связи ПРОИЗВ.

Степень бинарной связи ПОТРЕБ N:M. Класс принадлежности сущности СТРОЙКА - обязательный. Класс принадлежности сущности СТРОЙМАТ по отношению к типу связи ПОТРЕБ - необязательный. Построим концептуальную схему (ER-диаграмму типов), представленную на рис. 12.2.

Рис. 12.1. ER-диаграмма экземпляров

Рис. 12.2. Концептуальная схема (ER-диаграмма типов)

Датологическое проектирование

В соответствии с правилами связей ПРОИЗВ и ПОТРЕБ концептуальная схема отображается на следующие пять отношений, приведенные на рис. 12.3 - 12.7. Таким образом, существуют три отношения, ЗАВОД, СТРОЙМАТ и СТРОЙКА, представляющие одноименные сущности и два отношения, ПРОИЗВ и ПОТРЕБ, представляющие собой двусторонние (бинарные) связи. Данные отношения образуют базу данных с обезличенным хранением строительных материалов.

Рис. 12.3. Отношение СТРОЙМАТ

Рис. 12.4. Отношение ЗАВОД Рис. 12.5. Отношение СТРОЙКА

Рис. 12.6. Отношение ПОТРЕБ Рис. 12.7. Отношение ПРОИЗВ

В нашем примере обезличка появляется, потому что силикатный кирпич поступает с заводов сил_з и кер _з на склад и выгружается на одной площадке (вперемежку). Стройки шк и д_сад не знают, с какого завода поступил силикатный кирпич и кому в случае необходимости предъявить претензии по качеству. В обезличенной базе данных отсутствует информация о связях между тремя сущностями с тех случаях, когда хотя бы один экземпляр сущности (у нас это СТРОЙМАТ) связан не менее чем с одним экземпляром другой сущности и более чем с одним экземпляром третьей сущности.

Пример выполнения задания на проектирование базы данных адресным хранением

Инфологическое проектирование

Спроектируем базу данных так, чтобы обеспечить возможность ввода и хранения информации о том, какой завод, в каком количестве производит продукцию для каждой стройки, а также о том, какая стройка, в каком количестве потребляет продукцию какого завода. Пусть на складе имеется возможность хранения каждым заводом строительного материала на отдельной для каждой стройки площадке. Например, для второго варианта распределения для адресного хранения силикатного кирпича требуется две площадки. В соответствии с этим в сущности СТРОЙМАТ (рис. 12.1) введем две записи с_кир вместо одной и соединим их с указанными в табл. 12.2 заводами и стройками. Получится ER-диаграмма экземпляров, показанная на рис. 12.1.

На рис. 12.1 изображено пять отдельных экземпляров непрерывных триарных связей , каждая из которых связывает по одному экземпляру от всех трех сущностей ЗАВОД, СТРОЙМАТ, СТРОЙКА. Таким образом, для этих пяти экземпляров проведено преобразование ER- диаграммы экземпляров с двумя бинарными типами связей в ER-диаграмму экземпляров с одним триарным типом связи. Связи дер_з пар, кер_з кр_к, кер_з кер_п остаются, как и прежде, бинарного типа. ER-диаграмма типов примет вид, показанный на рис. 12.8.

Рис. 12.8. ER-диаграмма типов

Датологическое проектирование

На рис. 12.9 приведено отношение связи З_СМ_ С, построенное в соответствии с ER-диаграммой экземпляров, показанной на рис. 12.1. В отношении З_СМ_С кортежи (строки), в которых указаны значения ключевых атрибутов трех связываемых сущностей, являются экземплярами трехсторонней связи. На рис. 12.9 это полностью заполненные первая, пятая, шестая, седьмая и восьмая строки.

Базу данных с адресным хранением строительных материалов образуют три отношения (ЗАВОД, СТРОЙМАТ, СТРОЙКА), содержимое доменов которых совпадает с атрибутами соответствующих сущностей, и одно отношение З_СМ_С, содержащее всю информацию о связях между экземплярами этих сущностей.

Рис. 12.9. Отношение связи З_СМ_С

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

Лабораторная работа №13 Создание таблиц баз данных с обезличенным хранением

Цель работы:

    1. Изучение особенностей создания таблиц баз данных в MS Access;

    2. Приобретение навыков создания таблиц баз данных с обезличенным хранением в MS Access.

Теоретические сведения

Создание пустого файла базы данных

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

Щелкните мышью в выпадающем списке Имя файла и введите с клавиатуры имя файла, определенного при проектировании, например, СКЛАД-1-5. Расширение .mdb будет добавлено программой Access автоматически.

Щелкните на кнопке Создать. Появится окно базы данных, показанное на рис. 13.1. Сохраните файл СКЛАД-1-5.mdb в своей рабочей папке.

Создание пустых таблиц

Открыть файл базы данных. Появится окно базы данных, показанное на рис. 13.1. Щелкнуть мышью по кнопке Таблица, а затем по кнопке Создать. Появится окно Новая таблица.

В окне Новая таблица нужно щелкнуть по кнопке Конструктор, а затем на кнопке ОК. Откроется окно конструктора таблиц, показанное на рис. 13.2.

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

Рис. 13.1. Создание таблицы в режиме конструктора

Рис. 13.2. Окно конструктора таблиц

В соответствии с рис. 13.4 в окне конструктора таблиц введем имена полей таблицы ЗАВОД: Н_ЗАВ, ТЛФ_Д, А_ЗАВ с типом данных Текстовый и свойствами по умолчанию. После того как создание полей таблицы завершено, ее нужно сохранить. Только после сохранения таблицы можно приступить к вводу данных в таблицу. Для сохранения таблицы из меню Файл выбрать команду Сохранить. Появится окно для ввода имени таблицы, показанное на рис. 13.3.

Рис. 13.3. Окно для ввода имени таблицы

В окно Имя таблицы нужно ввести имя таблицы. В данном случае вводим имя ЗАВОД и нажимаем кнопку ОК.

Появляется запрос: Ключевое поле не определено. Ввести ключевое поле?

Источник: https://studfile.net/preview/16568236/