Смекни!
smekni.com

Создание базы данных в предметной области Аптека (стр. 2 из 3)

Сущность фактически представляет собой множество атрибутов, которые описывают свойства всех членов данного набора сущностей. Например, у сущности лекарство были выделены следующие атрибуты:

ЛЕКАРСТВО (ИД_ЛЕКАРСТВА, НАЗВАНИЕ_ЛЕКАРСТВА, АННОТА-ЦИЯ, ФИРМА_ПРОИЗВОДИТЕЛЬ, ЕДИНИЦА_ИЗМЕРЕНИЯ, МЕСТО_ХРА-НЕНИЯ).

Связь (relationship) - это ассоциация, установленная между несколькими сущностями. Пример: поскольку каждое лекарство производит фирма-производитель, то между сущностями ФИРМА_ПРОИЗВОДИТЕЛЬ и ЛЕКАРСТВО существует связь «производит» или ФИРМА_ПРОИЗВО-ДИТЕЛЬ – ЛЕКАРСТВО.

Набор связей (relationship set) - это отношение между n (причем n не меньше 2) сущностями, каждая из которых относится к некоторому набору сущностей.

В случае n=2, т.е. когда связь объединяет две сущности, она называется бинарной. Доказано, что n-арный набор связей (n>2) всегда можно заменить множеством бинарных, однако первые лучше отображают семантику предметной области.

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

· Один к одному (обозначается 1 : 1 ). Это означает, что в такой связи сущности с одной ролью всегда соответствует не более одной сущности с другой ролью.

· Один ко многим ( 1 : n ). В данном случае сущности с одной ролью может соответствовать любое число сущностей с другой ролью.

· Много к одному (n : 1 ). Эта связь аналогична отображению 1 : n.

· Многие ко многим (n : n). В этом случае каждая из ассоциированных сущностей может быть представлена любым количеством экземпляров.

Модель «сущность-связь» предметной области «Аптека» представлена на рис.1.1.

Рис.1.1 − Модель данных предметной области «Аптека»

1.3 Реализация БД «Аптека»

1.3.1 Создание таблиц БД «Аптека»

При реализации базы данных «Аптека» с помощью Microsoft Access были созданы 7 таблиц:

1. Лекарства;

2. Приход;

3. Расход;

4. Производители;

5. Поставщики;

6. Единицы измерения;

7. Места хранения.

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

Опишем основные таблицы и их атрибуты:

· Лекарства обладают следующими атрибутами:

- идентификатор лекарственного средства (ключевое поле);

- наименование лекарства;

- краткая аннотация;

- фирма-производитель;

- единица измерения;

- место хранения.

· Приход:

- идентификатор прихода (ключевое поле);

- препарат;

- дата поступления;

- количество;

- поставщик;

- цена закупки.

· Расход:

- идентификатор расхода (ключевое поле);

- препарат;

- дата реализации;

- количество;

- отпускная цена.

Данные, введенные в таблицы, отражены в приложении А.

1.3.2 Реализация запросов

Запросы используются для просмотра, изменения и анализа данных. Запросы также можно использовать в качестве источников записей для форм, отчетов и страниц доступа к данным. В Microsoft Access есть несколько типов запросов.

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

· Запросы с параметрами. Запрос с параметрами — это запрос, при выполнении отображающий в собственном диалоговом окне приглашение ввести данные, например условие (Условие. Ограничение, заданное для отбора записей, включаемых в результирующий набор записей запроса или фильтра.) для возвращения записей или значение, которое требуется вставить в поле. Можно разработать запрос, выводящий приглашение на ввод нескольких единиц данных, например двух дат. Затем Microsoft Access может вернуть все записи, приходящиеся на интервал времени между этими датами.

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

· Запросы на изменение. Запросом на изменение называют запрос, который за одну операцию изменяет или перемещает несколько записей. Существует четыре типа запросов на изменение.

- На удаление записи.

- На обновление записи.

- На добавление записей.

- На создание таблицы.

· Запрос SQL. Запрос SQL — это запрос, создаваемый при помощиjavascript:AppendPopup(this,'defSQLString_4'). Язык SQL (Structured Query Language) используется при создании запросов, а также для обновления и управления реляционными базами данных, такими как базы данных Microsoft Access.

В рамках данной курсовой работы была поставлена задача на основе объединенных таблиц создать следующие запросы в режиме конструктора:

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

- итоговые запросы;

- запрос с параметром;

- перекрестные запросы.

Был организован запрос на выборку по значению текстового поля, который отображает информацию по приходу лекарственного средства «5-НОК». Результат запроса представлен на рис. 1.2.

Рис.1.2 − Запрос к БД по значению тестового поля

Запрос к БД по значению одного первого символа позволяет получить информацию по приходу всех лекарственных препаратов, название которых начинается с буквы «М» (рис. 1.3).

Рис.1.3 − Запрос к БД по значению тестового поля

В курсовой работе также был организован запрос к БД «Аптека» по значению численного поля. Данный запрос позволяет получить информацию о ле5карственных препаратах, поступивших в аптеку в количестве «10» размерных единиц. Результат работы данного запроса демонстрирует рис. 1.4.

Рис.1.4 − Запрос к БД по значению числового поля

Запрос с параметром, организованный к БД «Аптека», позволяет получить информацию о приходах всех лекарств в заданный пользователем временной интервал. При вызове данного запроса на исполнение появляется диалоговое окно «Введите значение параметра» (рис. 1.5), в котором последовательно необходимо ввести начальную, а затем конечную дату интересующего пользователя временного интервала. Результат работы запроса с параметром, временной интервал для которого задан 01.01.2010-01.05.2010, представлен на рис. 1.6.

Рис.1.5 − Диалоговое окно ввода параметра

Рис.1.6 −Результат работы запроса с параметром

В рамках данной курсовой работы создан запрос, демонстрирующий работу операции группирования данных с использованием функции sum() и использования построителя выражений (рис 1.7). Данный запрос позволяет определить суммы от реализации каждого лекарственного средства по датам реализации. Для отображения указанной суммы было создано новое поле с заголовком «Сумма», вычисляемое как выражение «[Количество реализованного товара]∙[Отпускная цена за штуку]». В данном запросе использовано сортировка данных (по возрастанию) по названию.

Рис.1.7 −Результат работы запроса с использованием построителя выражений и группировки данных

К БД «Аптека» был реализован перекрестный запрос (рис. 1.8), который отражает по датам количество проданного в день лекарственного средства.

Рис.1.8 –Перекрестный запрос: Реализация лекарств по датам

Для работы с БД был создан запрос из объединенных таблиц («Лекарства» и «Реализация») – рис. 1.9-1.10.

Рис.1.9 –Формирование запроса из объединенных таблиц

Рис. 1.10 –Результат работы запроса из объединенных таблиц

1.3.3 Построение форм

Access предоставляет возможность вводить данные как непосредственно в таблицу, так и с помощью форм. Форма в БД − это структурированное окно, которое можно представить так, чтобы оно повторяло форму бланка. Формы создаются из набора отдельных элементов управления.

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

Форма предоставляет возможности для: