Разработка базы данных "Аптека-препараты"

Проектирование базы данных "Аптека" для автоматизации работы как провизоров, так и клиентов аптеки при заказе необходимых препаратов с фирм. Входные и выходные данные задач. Инфологическое и даталогическое проектирование БД, информационной системы.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 30.05.2020
Размер файла 1,9 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Разработка базы данных «Аптека-препараты»

Выполнил: студент группы 227-17

Саттаров Х.

Руководитель КР: Валерий К.Н.

Задание

база данных аптека информационный

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

1. Анализ и описание предметной области

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

В аптеке необходимо хранить разнообразную информацию о препаратах, чтобы оперативно можно было определить информацию о том, для каких заболеваний необходимо принимать препарат, о его форме выпуска, типе препарата (витамин, биологически-активная добавка (БАК), лекарство, косметические препараты), способ применения данного препарата, показания к применению, фармакологические свойства, производитель. Необходимо учесть, что препараты в аптеке могут присутствовать в нескольких экземплярах, что препараты могут поставляться одной фирмой, могут иметь одинаковое название, поэтому препаратам необходимо присваивать некоторые уникальные шифры.

Также может быть такое, что несколько препаратов лечат одно и тоже заболевание, и один препарат может лечить несколько заболеваний, поэтому и заболеваниям даны уникальные шифры.

Форма выпуска у препарата может быть также различной.

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

Работать с базой данных «Аптека-препараты» будут следующие пользователи:

зав. аптеки;

фармацевты;

оператор ЭВМ,

клиенты аптеки.

Пользователи базой данной «Аптека» должны иметь возможность систематизировать список имеющихся препаратов, т.е. распределять препараты по типу, добавлять новые и списывать старые, иметь возможность быстро найти необходимый препарат, поставляющую его фирму, добавить фирму, удалить фирму, иметь возможность заказать препарат.

База данных «Аптека» выполнит задачи повышение оперативности пополнения аптеки медпрепаратами, сокращение времени учета препаратов в аптеке, поиск необходимых препаратов или их заменителей (фармацевты), формирование заявки на препараты (фармацевты), формирование ведомости препаратов, необходимых в аптеке (зав.аптеки).

2. Цели и задачи создания базы данных «Аптека»

Проанализировав предметную область, мы можем сказать, что разработка базы данных для аптеки актуальна. Целью разработки базы данных «Аптека» и автоматизированной системы для работы с ней является повышение качества и скорости обслуживания клиентов, а также при общедоступном пользовании самостоятельному выбору и заказу лекарств клиентами на прямую через фирму.

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

Задачами автоматизированной системы являются:

1. Запись нового препарата

2. Поиск препарата из существующих и их заменителей

3. Удаление препарата

4. Отображение фирм, поставляющих данный препарат

5. Отображение цен в фирмах, поставляющих препарат

6. Отображение сведений фармакологические свойства

7. Отображение сведений способ применения

8. Отображение сведений показания к применению

9. Сортировка препаратов по типу(витамины, БАК, лекарства, косметика)

10. Возможность добавления нового заболевания

11. Подготовка сведений о фирмах

12. Удаление фирмы

13. Добавление фирмы

14. Формирование заказа определенного препарата, с выбором его из каталога фирмы

15. Формирование общей суммы «к оплате»

3.Проектирование базы данных

Входные и выходные данные задач

Входными данными задач являются:

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

Информация о препарате:

№ Препарата (уникальный)

Регистрационный номер

Торговое патентовое название препарата

Международное непатентовое название препарата

Химическое название

Срок хранения, месяцы

Изображение

Тип препарат

Примечание

Форма выпуска

Состав и лекарственная форма

Фармокотерапевтическая группа

Фармакодинамика

Фармакокинетика

Производитель

Информация о заболеваниях

Шифр заболевания

Название заболевания

Тип препарат

Показания к применению

№Препарата

Шифр заболевания

Доза

Побочные действия

Противопоказания

Взаимодействия с другими препаратами

Показания к применению

Особые указания

Передозировка

Прайс цен

№Препарата

Шифр фирмы

Цена

Количество штук

Фирмы-поставщики

Шифр фирмы

Название фирмы

Адрес

Телефон

Идентификационный номер

Банк

Расчетный счет

БИК

К/с

Индекс

Сайт

Содержание заказа

№Препарата

№Заказа

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

К оплате за заказанный товар

Заказ по фирме

№Заказа

Шифр фирмы

Дата заказа

Инфологическое проектирование базы данных

На этапе инфологического проектирования базы данных строится инфологическая модель предметной области, которая должна отображать семантику (смысл взаимосвязи объектов) предметной области. ИЛМ строится не для отдельного объекта, а отображает классы объектов и связи между ними. Диаграмма, отражающая связи объектов предметной области, называется диаграммой ER-типа (так как Entity - сущность, Relationship - связь).

Выделим основные сущности:

сущность «Препараты»;

сущность «Фирмы»;

сущность «Прайс цен»;

сущность «Показания к применению»;

сущность «Заболевания»

сущность «Заказ по фирме»

сущность «Содержание заказа»

Инфологическая модель базы данных «Библиотека» представлена на рис. 1.

Сущность «Препараты» содержит информацию обо всех препаратах, имеющихся в аптеке. Отдельный препарат этой сущности может поставляться различными фирмами и иметь различные цены в различных фирмах, поэтому водиться сущность «Прайс цен». Каждый препарат сущности «Прайс цен» содержит информацию поставляющей фирме и о цене конкретного препарата. Между сущностью «Препараты» и сущностью «Прайс цен» существует связь типа «1:М», обязательная с обеих сторон (если есть информация о препарате, то есть хотя бы одна фирма, поставляющая данный препарат цена препарата, если есть цена препарата и поставляющая его фирма, то должна быть информация о препарате).

Рис.1. Инфологическая модель предметной области (ПО) «Аптека - препараты»

Сущность «Фирмы» содержит информацию о фирмах поставляющих препараты. Отдельная фирма этой сущности содержит информацию об одной цене отдельного препарата. Существует связь между сущностью «Фирмы» и сущностью «Прайс цен» типа «1:М», не обязательная с обеих сторон (ни одна фирма может не поставлять ни одного препарата).

Сущность «Препараты» содержит информацию обо всех препаратах, имеющихся в аптеке. Отдельный препарат этой сущности иметь различные показания к применению, поэтому водиться сущность «Показания к применению». Каждое показание к применению сущности «Показание к применению» содержит информацию применению отдельного препарата. Между сущностью «Препараты» и сущностью «Показания к применению» существует связь типа «1:М», обязательная с обеих сторон (если есть информация о препарате, то обязательно должно быть показание к применению, если есть показание к применению, то обязательно должна быть информация о препарате). Сущность «Заболевания» содержит информацию о показания к применению, ведь при разных заболеваниях показания к применению могут быть различными. Отдельное заболевание сущности «Заболевания» содержит информацию об одном показании к применению одного препарата. Существует связь между сущностью «Заболевания» и сущностью «Показания к применению» типа «1:М», обязательная с обеих сторон (если есть показание к применению, то должно быть и заболевание, для лечения которого оно предназначено). «Заказ по фирме» относиться к «Фирмы» как 1:М, то есть каждому шифру фирмы соответствует одна фирма. «Содержание заказа » относится к таблице «Заказ по фирме» также 1:М, то есть в одном заказе содержится лишь товар, заказанный у одной фирмы, к таблице «Препараты» также отношение 1:М, то есть определенному номеру препарата соответствует один препарат.

Определим ключи - уникальные идентификаторы каждой сущности: для сущности «Препараты» - это номер препарата (№Препарата), для сущности «Прайс цен» - номер препарата, шифр фирмы, для сущности «Фирмы» - шифр фирмы, для сущности «Показания к применению» номер препарата и шифр заболевания, для сущности «Заболевания» - шифр заболевания, в «Заказ по фирме»- номер заказа(№Заказа), в «Содержимое заказа»-номер заказа(№Заказа),номер препарата (№Препарата).

Даталогическое проектирование базы данных

Даталогическим (логическим) проектированием называют проектирование логической структуры БД в среде конкретной СУБД. Выберем в качестве модели данных реляционную базу данных (РБД).

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

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

Ограничения или свойства таблиц:

1. Каждая таблица представляет собой реальный объект- сущность.

2. Элементы таблиц должны быть неделимыми.

3. Столбцы- поименованы.

4. Элементы столбца должны быть однородными. В таблице не должно быть двух одинаковых строк.

5. Каждая таблица должна иметь первичный ключ для идентификации каждой строки таблицы.

В результате получили следующие отношения:

Препараты (№ Препарата, Регистрационный номер, Торговое патентовое название препарата, Международное непатентовое название препарата, Химическое название, Срок хранения, месяцы, Изображение, Тип препарата, Примечание, Форма выпуска, Состав и лекарственная форма, Фармокотерапевтическая группа, Фармакодинамика, Фармакокинетика, Производитель).
Прайс цен (№Препарата, Шифр фирмы, Оптовая цена, Количество штук,).

Фирмы (Шифр фирмы, Название фирмы, Адрес, Телефон, Идентификационный номер, Банк, Расчетный счет, БИК, К/с, Индекс, Сайт).

Показания к применению (№Препарата, Шифр заболевания, Доза, Побочные действия, Противопоказания, Взаимодействия с другими препаратами, Показания к применению, Особые указания, Передозировка).

Заболевания (Шифр заболевания, Название заболевания, Тип препарата).

Заказ_по_фирме (№заказа,Шифр фирмы, Дата заказа, Итого к оплате за заказ).

Содержимое заказа(№Препарата, №Заказа, Кол_заказа, К оплате за товар).

Нормализация отношений

Следующим шагом в проектировании РБД является нормализация отношений. Даталогическое концептуальное проектирование состоит в разработке корректной схемы в виде совокупности взаимосвязанных отношений отражающих объекты предметной области и их семантические связи. В такой схеме должны отсутствовать нежелательные функциональные зависимости между атрибутами. Нормализированный набор таблиц обладает лучшими свойствами при включении, модификации и удалении данных, чем любой другой набор таблиц представляющий те же данные. Проектирование может выполняться путем декомпозиции или путем синтеза. При проектировании с использованием декомпозиции переходят от одной нормальной формы к другой нормальной форме более высокого уровня, сохраняя эквивалентность схем Базы Данных. Выделяют несколько нормальных форм (НФ): 1НФ, 2НФ, 3НФ, 4НФ, 5НФ. Каждая следующая НФ улучшает свойство схемы, сохраняя свойства предыдущей НФ.

Выбор СУБД

Выполним физическое проектирование в среде СУБД Microsoft SQL Server 2005. Зададим имена таблиц и полей, определим типы данных и размерность полей таблиц. В таблицах выберем первичные ключи и индексированные поля. Так же для поля определим его основные характеристики - является ли это поле внешним или первичным ключом, создан ли индекс по этому полю, задано ли для поля значение по умолчанию, какие ограничения заданы для данного поля (уникальность значений, маска ввода). Вся эта информация представлена в таблице 1.

Физическое проектирование.

Выполним физическое проектирование в среде СУБД Microsoft Access 2000. Поименуем таблицы и атрибуты, определим типы данных и размерность атрибутов. В таблицах выберем первичные ключи и индексированные поля.

Таблица 1.Структура таблиц РБД «Аптека»

Название таблицы

Имя поля

Тип данных

Размер поля

Первичный ключ / вторичный ключ / индексированное поле

Препараты

№ Препарата

Счетчик, int

Длинное целое

Первичный ключ

Регистрационный номер

nchar

20

Название препарата

nchar

150

Международное непатентованное название

nchar

50

Химическое название

nchar

100

Срок хранения

int

Длинное целое

Изображение

image

Тип препарата

nchar

20

Примечание

nchar

250

Форма выпуска

int

Длинное целое

Состав и лекарственная форма

nchar

255

Фармакотерапевтическая группа

nchar

200

Фармакодинамика

ntext

Фармакокинетика

ntext

Производитель

ntext

Фирмы

Шифр фирмы

Счетчик,int

Длинное целое

Первичный ключ

Название фирмы

nchar

30

Адрес

nchar

150

Телефон

nchar

30

Идентификационный номер

nchar

50

Банк

nchar

100

Расчетный счет

nchar

50

БИК

int

Длинное целое

К/с

nchar

50

Индекс

int

Длинное целое

Сайт

nchar

50

Заболевания

Шифр заболевания

nchar

50

Первичный ключ

При заболеваниях

nchar

50

Тип препарат

nchar

20

Показания к применению

№ Препарата

nchar

Длинное целое

Первичный ключ

Шифр заболевания

nchar

50

Вторичный ключ

Доза

nchar

255

Побочные действия

ntext

Противопоказания

ntext

Взаимодействие с другими лекарствами

ntext

Показания к применению

ntext

Особые указания

ntext

Передозировка

ntext

Прайс цен

№Препарата

int

Длинное целое

Первичный ключ

Шифр фирмы

int

Длинное целое

Вторичный ключ

Оптовая цена

money

Количество, штук

int

Длинное целое

Заказ по фирме

№Заказа

Счетчик,int

Длинное целое

Первичный ключ

Шифр фирмы

Текстовый

20

Дата заказа

datetime

Итого к оплате за заказ

money

Содержание заказа

№Препарата

int

Длинное целое

Первичный ключ

№Заказа

int

Длинное целое

Вторичный ключ

Кол_заказа

int

Длинное целое

К_оплате_за_заказ

money

Связи между таблицами в базе данных «Аптека» представлены на рис.3

Рис.3. Связи между таблицами в базе данных

4. Автоматизированная информационная система на основе базы данных «Аптека «Айболит»»

ТРИГГЕРЫ

Тригеры таблицы «Содержание заказа»:

1. добавление_товара_в_заказ

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

USE [Apteka_Aibolit]

GO

/****** Object: Trigger [dbo].[добавление_товара_в_заказ] Script Date: 06/16/2009 02:26:48 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

ALTER trigger [dbo].[добавление_товара_в_заказ]

on [dbo].[Содержимое_заказа]

for insert

as

declare @Kol int, @Kol_Nal int, @NPr int, @Ch_firmi int, @NZakaza int

select @Kol=Кол_заказа from inserted

select @NPr=NПрепарата from inserted

select @NZakaza=NЗаказа from inserted

select @Ch_firmi=Шифр_фирмы from Заказ_по_фирме

where NЗаказа=@NZakaza

select @Kol_Nal=Количество_штук from Прайс_цен

where NПрепарата=@NPr and Шифр_фирмы=@Ch_firmi

if @Kol_Nal<@Kol

begin

update Содержимое_заказа set Кол_заказа=@Kol_Nal

where NПрепарата=@NPr and NЗаказа=@NZakaza

update Прайс_цен set Количество_штук=0

where NПрепарата=@NPr and Шифр_фирмы=@Ch_firmi

end

изменение_количества_в_прайсе_при_добавлении_товара_в _заказ

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

USE [Apteka_Aibolit]

GO

/****** Object: Trigger [dbo].[изменение_количества_в_прайсе_при_добавлении_товара_в_заказ]

Script Date: 06/16/2009 02:28:50 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

ALTER trigger [dbo].[изменение_количества_в_прайсе_при_добавлении_товара_в_заказ]

on [dbo].[Содержимое_заказа]

for insert

as

declare @Kol int, @Kol_Nal int, @NPr int, @Ch_firmi int,@NZakaza int

select @Kol=Кол_заказа from inserted

select @NPr=NПрепарата from inserted

select @NZakaza=NЗаказа from inserted

select @Ch_firmi=Шифр_фирмы from Заказ_по_фирме

where NЗаказа=@NZakaza

select @Kol_Nal=Количество_штук from Прайс_цен

where NПрепарата=@NPr and Шифр_фирмы=@Ch_firmi

if @Kol_Nal>@Kol

begin

update Прайс_цен set Количество_штук=@Kol_Nal-@Kol

where NПрепарата=@NPr and Шифр_фирмы=@Ch_firmi

end

изменение_количества_в_прайсе_при_удалении_товара_из_заказа

При удалении из заказа одного из препаратов пересчитываем количество в наличие в «Прайсе цен».

USE [Apteka_Aibolit]

GO

/****** Object: Trigger [dbo].[изменение_количества_в_прайсе_при_удалении_товара_из_заказа] Script Date: 06/16/2009 02:30:52 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

ALTER trigger [dbo].[изменение_количества_в_прайсе_при_удалении_товара_из_заказа]

on [dbo].[Содержимое_заказа]

for delete

as

declare @Kol int, @Kol_Nal int, @NPr int, @Ch_firmi int,@NZakaza int

select @Kol=Кол_заказа from deleted

select @NPr=NПрепарата from deleted

select @NZakaza=NЗаказа from deleted

select @Ch_firmi=Шифр_фирмы from Заказ_по_фирме

where NЗаказа=@NZakaza

select @Kol_Nal=Количество_штук from Прайс_цен

where NПрепарата=@NPr and Шифр_фирмы=@Ch_firmi

begin

update Прайс_цен set Количество_штук=@Kol_Nal+@Kol

where NПрепарата=@NPr and Шифр_фирмы=@Ch_firmi

end

подсчет_итого_к_оплате_за_товар

Подсчет «к оплате» за один товар. То есть количество заказанного препарата умножаем на его цену из «Прайса цен».

USE [Apteka_Aibolit]

GO

/****** Object: Trigger [dbo].[подсчет_к_оплате_за_один_товар] Script Date: 06/16/2009 02:32:34 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

ALTER trigger [dbo].[подсчет_к_оплате_за_один_товар]

on [dbo].[Содержимое_заказа]

for insert

as

declare @Stoim int,@Kol int, @NPr int, @Ch_firmi int, @NZakaza int, @K_oplate money

select @Kol=Кол_заказа from inserted

select @NPr=NПрепарата from inserted

select @NZakaza=NЗаказа from inserted

select @Ch_firmi=Шифр_фирмы from Заказ_по_фирме

where NЗаказа=@NZakaza

select @Stoim = цена from Прайс_цен

where NПрепарата=@NPr and Шифр_фирмы=@Ch_firmi

if @Kol!=0

begin

update Содержимое_заказа set К_оплате_за_товар=@Kol*@Stoim

where NПрепарата=@NPr

end

подсчет_к_оплате_за_один_товар

Подсчет «Итого к оплате за заказ». Суммируем все «К оплате» по одному номеру заказа.

USE [Apteka_Aibolit]

GO

/****** Object: Trigger [dbo].[подсчет_итого_к_оплате_за_товар] Script Date: 06/16/2009 02:35:30 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

ALTER trigger [dbo].[подсчет_итого_к_оплате_за_товар]

on [dbo].[Содержимое_заказа]

for insert

as

declare @NPr int, @Ch_firmi int, @NZakaza int, @K_oplate money, @Itogo_K_oplate money

select @NZakaza=NЗаказа from inserted

select @Ch_firmi=Шифр_фирмы from Заказ_по_фирме

where NЗаказа=@NZakaza

select @K_oplate=К_оплате_за_товар from Содержимое_заказа

where NЗаказа=@NZakaza

update Заказ_по_фирме set Итого_к_оплате_за_заказ=Итого_к_оплате_за_заказ+@K_oplate

where NЗаказа=@NZakaza

изменение_итого_к_оплате_в_заказ_по_фирме_при_удалении_товара_из_заказа

При удалении товара из заказа пересчет «Итого к оплате за заказ».

USE [Apteka_Aibolit]

GO

/****** Object: Trigger [dbo].[изменение_итого_к_оплате_в_заказ_по_фирме_при_удалении_товара_из_заказа] Script Date: 06/16/2009 02:37:02 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

ALTER trigger [dbo].[изменение_итого_к_оплате_в_заказ_по_фирме_при_удалении_товара_из_заказа]

on [dbo].[Содержимое_заказа]

for delete

as

declare @Kol int, @NPr int, @Ch_firmi int,@NZakaza int, @itogo_k_oplate_za_zakaz money, @k_oplate_za_tovar money

select @NZakaza=NЗаказа from deleted

select @k_oplate_za_tovar=К_оплате_за_товар from deleted

select @Ch_firmi=Шифр_фирмы from Заказ_по_фирме

where NЗаказа=@NZakaza

select @itogo_k_oplate_za_zakaz=Итого_к_оплате_за_заказ from Заказ_по_фирме

where NЗаказа=@NZakaza

update Заказ_по_фирме set Итого_к_оплате_за_заказ=@itogo_k_oplate_za_zakaz-@k_oplate_za_tovar

where NЗаказа=@NZakaza and Шифр_фирмы=@Ch_firmi

ХРАНИМЫЕ ПРОЦЕДУРЫ

1. sel.

Предназначена для отображения для определенного препарата фирм, ее поставляющих, цен на этих фирмах, количество в наличии.

USE [Apteka_Aibolit]

GO

/****** Object: StoredProcedure [dbo].[sel] Script Date: 06/16/2009 02:44:16 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

ALTER proc [dbo].[sel]

@se nchar(150)

AS

SELECT Препараты.*, Прайс_цен.цена, Прайс_цен.Количество_штук, Фирмы.Название_фирмы, Фирмы.Адрес, Фирмы.Телефон, Фирмы.Сайт

FROM Прайс_цен INNER JOIN

Препараты ON Прайс_цен.NПрепарата = Препараты.NПрепарата INNER JOIN

Фирмы ON Прайс_цен.Шифр_фирмы = Фирмы.Шифр_фирмы

WHERE (Препараты.Название_препарата = @se)

БАД

Предназначена для отбора из препаратов только БАД.

USE [Apteka_Aibolit]

GO

/****** Object: StoredProcedure [dbo].[БАД] Script Date: 06/16/2009 02:45:33 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

ALTER proc [dbo].[БАД]

as

SELECT NПрепарата, Регистрационный_номер, Название_препарата, Международное_непатентовонне_название, Химическое_название, Срок_хранения,

Изображение, Тип_препарата, Примечание, Форма_выпуска, Состав_и_лекарственная_форма, Фармакотерапевтическая_группа, Фармакодинамика,

Фармакокинетика, Производитель

FROM Препараты

WHERE (Препараты.Тип_препарата = 'Бад')

Витамин

Предназначена для отбора из препаратов только Витаминов.

USE [Apteka_Aibolit]

GO

/****** Object: StoredProcedure [dbo].[Витамин] Script Date: 06/16/2009 02:45:33 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

ALTER proc [dbo].[БАД]

as

SELECT NПрепарата, Регистрационный_номер, Название_препарата, Международное_непатентовонне_название, Химическое_название, Срок_хранения,

Изображение, Тип_препарата, Примечание, Форма_выпуска, Состав_и_лекарственная_форма, Фармакотерапевтическая_группа, Фармакодинамика,

Фармакокинетика, Производитель

FROM Препараты

WHERE (Препараты.Тип_препарата = 'Витамин)

Косметика

Предназначена для отбора из препаратов только косметики.

USE [Apteka_Aibolit]

GO

/****** Object: StoredProcedure [dbo].[Косметика] Script Date: 06/16/2009 02:45:33 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

ALTER proc [dbo].[БАД]

as

SELECT NПрепарата, Регистрационный_номер, Название_препарата, Международное_непатентовонне_название, Химическое_название, Срок_хранения,

Изображение, Тип_препарата, Примечание, Форма_выпуска, Состав_и_лекарственная_форма, Фармакотерапевтическая_группа, Фармакодинамика,

Фармакокинетика, Производитель

FROM Препараты

WHERE (Препараты.Тип_препарата = 'Косметика)

Лекарственные препараты

Предназначена для отбора из препаратов только БАД.

USE [Apteka_Aibolit]

GO

/****** Object: StoredProcedure [dbo].[БАД] Script Date: 06/16/2009 02:45:33 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

ALTER proc [dbo].[Лекарственные препараты]

as

SELECT NПрепарата, Регистрационный_номер, Название_препарата, Международное_непатентовонне_название, Химическое_название, Срок_хранения,

Изображение, Тип_препарата, Примечание, Форма_выпуска, Состав_и_лекарственная_форма, Фармакотерапевтическая_группа, Фармакодинамика,

Фармакокинетика, Производитель

FROM Препараты

WHERE (Препараты.Тип_препарата = 'Лекаство')

Поиск_препарата

Предназначена для поиска препарата по его названию.

USE [Apteka_Aibolit]

GO

/****** Object: StoredProcedure [dbo].[Поиск_препарата] Script Date: 06/16/2009 02:50:48 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

ALTER proc [dbo].[Поиск_препарата]

@nazv nchar(150)

as

SELECT NПрепарата, Регистрационный_номер, Название_препарата, Международное_непатентовонне_название, Химическое_название, Срок_хранения,

Изображение, Тип_препарата, Примечание, Форма_выпуска, Состав_и_лекарственная_форма, Фармакотерапевтическая_группа, Фармакодинамика,

Фармакокинетика, Производитель

FROM Препараты

WHERE (Препараты.Название_препарата = @nazv)

Поиск_фирмы

Предназначена для поиска фирмы по ее названию.

USE [Apteka_Aibolit]

GO

/****** Object: StoredProcedure [dbo].[Поиск_фирмы] Script Date: 06/16/2009 02:54:56 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

ALTER proc [dbo].[Поиск_фирмы]

@nazv nchar(30)

as

SELECT Фирмы.*

FROM Фирмы

WHERE (Фирмы.Название_фирмы = @nazv)

показания_к_применению_по_заболеванию

Предназначена для выбора для определенного препарата показания к применению по определенному заболеванию.

USE [Apteka_Aibolit]

GO

/****** Object: StoredProcedure [dbo].[показания_к_применению_по_заболеванию] Script Date: 06/16/2009 02:56:10 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

ALTER proc [dbo].[показания_к_применению_по_заболеванию]

@zabolevanie nchar(50)

AS

SELECT Заболевания.При_зболеваниях, Заболевания.Тип_препарата, Показания_к_применению.*, Препараты.Название_препарата

FROM Заболевания INNER JOIN

Показания_к_применению ON Заболевания.Шифр_заболевания = Показания_к_применению.[При заболеваниях] INNER JOIN

Препараты ON Показания_к_применению.NПрепарата = Препараты.NПрепарата

WHERE (Заболевания.При_зболеваниях = @zabolevanie)

ОРГАНИЗАЦИЯ ИНТЕРФЕЙСА С ПОЛЬЗОВАТЕЛЕМ

Стартовое окно клиентской части базы данных представлено на рис 4.

Рис.4. Стартовое окно

Здесь можно выбрать 3 варианта, войти на страницу «Фирмы» , «Препараты», « Прайс цен».

После нажатия на кнопку «Препараты» открывается окно, представленное на рисунке 5. В этом окне можно просматривать каталог товаров и осуществлять по нему поиск.

Рис.5. Окно «Препараты».

При нажатии на ссылку «Показания к применению» открывается окно, которое представлено на рис. 6. Здесь при вводе категории заболевания можно получить по нему показания к применению:

Рис.6. Показания к применению

При нажатии на ссылку «Фармакологические свойства» появляется окно, представленное на рис.7.:

Рис.7. Фармакологические свойства

При нажатии на ссылку «Состав и лекарственная форма» появляется окно, представленное на рис.8.:

Рис.8. Состав и лекарственная форма

При нажатии на одну из ссылок «Витамины», «Лекарственные препараты», «БАД», «Косметика» появляются такие окна, представленные на рис.9.:

Рис.9. Тип препарата

При нажатии на кнопку поиск по названию, появляется окно, представленное на рис.10:

Рис.10. Поиск по названию

При нажатии на кнопку «Фирмы», появляется окно, представленное на рис. 11:

Рис 11. Фирмы

При нажатии на кнопку поиск по названию, появляется окно, представленное на рис.12:

Рис.12. Поиск по названию

При нажатии из главного окна на кнопку «Прайс цен», появляется окно, представленное на рис.13.:

Рис.13 «Прайс цен»

При нажатии на кнопку «Заказ», появляется окно, представленное на рис.14.:

Рис.14 Заказ

При нажатии на кнопку «Содержимое заказа», появляется окно, представленное на рис.15.:

Рис. 15 «Содержимое заказа».

Список литературы

1. Лазуков Д. С., Кладиев А. В. Методическое пособие к выполнению лабораторных работ курса «Распределённые базы данных».

2. Ризаев И. С. Системы распределённой обработки данных: Учебное пособие. : 2007. - 83 с.

3. Федоров А. А. Microsoft Visual Studio 2008. Краткий обзор ключевых новинок. 2008.Microsoft Developer Network (MSDN) 200

Размещено на Allbest.ru

...

Подобные документы

  • Методика и основные этапы разработки базы данных "Аптеки-Препараты" и автоматизированной системы для работы с ней. Входные и выходные данные задач, выбор СУБД и его обоснование. Структура информационной системы и взаимодействие ее основных компонентов.

    курсовая работа [1,5 M], добавлен 22.12.2009

  • Разработка базы данных для информационной поддержки деятельности аптеки с целью автоматизированного ведения данных о лекарствах аптеки. Проектирование схемы базы данных с помощью средства разработки структуры базы данных Microsoft SQL Server 2008.

    курсовая работа [3,6 M], добавлен 18.06.2012

  • Проектирование структуры базы данных, предназначенной для функционирования автоматизированной информационной системы. Значение и информационное наполнение базы данных. Инфологическое, даталогическое и физическое проектирование. Инструкция по эксплуатации.

    курсовая работа [4,2 M], добавлен 17.12.2011

  • Анализ существующих разработок и выбор стратегии автоматизации делопроизводства взаимоотношении поставщиков лекарственных препаратов с аптекой. Разработка проекта базы данных аптеки "Ригла". Обоснование экономической эффективности разработки базы данных.

    дипломная работа [3,0 M], добавлен 19.09.2013

  • Анализ предметной области. Предположительный набор необходимых функций. Даталогическое и инфологическое проектирование. Реляционная модель данных. Создание запросов и атрибутов. Физическая модель данных. Разработка приложения для работы с базой данных.

    курсовая работа [720,8 K], добавлен 26.04.2015

  • Выбор, обоснование и особенности работы СУБД. Характеристика языков программирования. Разработка структурной и функциональной модели информационной системы аптеки. Проектирование программной среды АИС и ее интерфейса. Построение модели базы данных.

    курсовая работа [442,3 K], добавлен 21.04.2012

  • Создание базы данных "Автовокзал" как части информационной системы. Требования к базе данных и этапы ее разработки. Анализ информационных потоков, выбор модели. Входные и выходные данные. Программирование базы данных на языке Borland Delphi 7.0.

    курсовая работа [105,8 K], добавлен 16.05.2011

  • Проектирование и реализация учебной базы данных предметной области "Аптека", с использованием настольной СУБД реляционного типа Microsoft Access. Установление связей между таблицами, использование запросов, предложения SQL, инструменты для создания форм.

    курсовая работа [3,1 M], добавлен 14.10.2012

  • Этапы проектирования базы данных "Аптека", которая включает таблицы с наименованием лекарства; аннотацией; местом хранения; датой поступления; фирмой производителем; поставщиком и т.д. Принципы работы настольной СУБД реляционного типа - Microsoft Access.

    курсовая работа [2,3 M], добавлен 12.11.2010

  • Концептуальное и инфологическое проектирование базы данных в системе управления базами данных Microsoft Access. Физическое проектирование базы данных "Магазин спорттоваров". Тестирование и отладка базы данных, составление руководства пользователя.

    курсовая работа [6,7 M], добавлен 22.11.2022

  • Анализ предметной области, ее формализации с помощью функциональных зависимостей. Этапы минимизации системы функциональных зависимостей и на основании полученной редуцированной системы проектирование модели базы данных. Создание и моделирование запросов.

    курсовая работа [1,7 M], добавлен 21.06.2010

  • Сфера работы туристической фирмы, подлежащей автоматизации. Концептуальное проектирование базы данных. Перечень сущностей и атрибутов. Инфологическое и логическое проектирование и создание запросов. Работа с информационной системой, формирование отчетов.

    курсовая работа [6,6 M], добавлен 24.10.2013

  • Инфологическое проектирование базы данных. Создание информационной системы "СПОРТ" для автоматизации обработки данных о проводимых соревнованиях и чемпионатах. Описание размещения в файловой системе. Создание таблиц, запросов и форм просмотра данных.

    курсовая работа [4,6 M], добавлен 22.05.2012

  • Выбор среды программирования, предметной области автоматизированной информационной системы "Риелторская контора". Входные и выходные данные, создание запросов SQL. Проектирование интерфейса проекта. Использование для отчета реляционной модели данных.

    отчет по практике [2,4 M], добавлен 13.01.2011

  • Алгоритм работы программы. Анализ предметной области. Структура таблиц БД "Библиотека". Инфологическое и даталогическое проектирование. Запросы для поиска и извлечения только требуемых данных. Формы для просмотра, добавления, изменения данных в таблицах.

    курсовая работа [5,1 M], добавлен 14.06.2014

  • Понятие базы данных, модели данных. Классификация баз данных. Системы управления базами данных. Этапы, подходы к проектированию базы данных. Разработка базы данных, которая позволит автоматизировать ведение документации, необходимой для деятельности ДЮСШ.

    курсовая работа [1,7 M], добавлен 04.06.2015

  • Схема взаимодействия подразделений предприятия. Выбор и обоснование технологии проектирования базы данных. Описание объектов базы данных. Разработка запросов на выборку, изменение, обновление и удаление данных. Интерфейсы взаимодействия с базой данных.

    курсовая работа [1,4 M], добавлен 25.05.2023

  • Проектирование и создание информационной базы данных для управления предприятием "Завод металлоизделий". Данные для базы, предметная область, атрибуты объектов базы данных. Объектные отношения, их ключи, связи объектов и отношений базы данных предприятия.

    реферат [26,9 K], добавлен 04.12.2009

  • Теоретические основы проектирования и разработки баз данных. Этапы физической реализации. Даталогическое и инфологическое проектирование. Определение сущностей, атрибутов, взаимосвязей между сущностями, ключей. Построение ER-модели. Управляющая программа.

    курсовая работа [1,5 M], добавлен 02.06.2015

  • Проектирование информационной системы бронирования билетов кассы аэропорта. Анализ информационных задач и круга пользователей системы. Составление реляционных отношений. Дополнительные ограничения целостности. Физическое проектирование базы данных.

    курсовая работа [949,1 K], добавлен 28.03.2011

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.