Разработка базы данных торговой организации

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

	ФАКУЛЬТЕТ «КОМПЬЮТЕРНЫЕ ТЕХНОЛОГИИ В БИЗНЕСЕ»

	

СПЕЦИАЛЬНОСТЬ 071900 «ИНФОРМАЦИОННЫЕ СИСТЕМЫ В ЭКОНОМИКЕ»

                                 351400 «ПРИКЛАДНАЯ ИНФОРМАТИКА В ЭКОНОМИКЕ»



Кафедра___________________

___________________________

___________________________













КУРСОВОЙ ПРОЕКТ (РАБОТА)





	ПО ПРЕДМЕТУ	                     Базы данных_________________________                                                   

	

	НА ТЕМУ	 «Разработка базы данных торговой организации»____

		 











Студента ____3___ курса



группа № _31__



Форма обучения _очная______



___Щербакова_______________Фамилия

___Валерия           ____________Имя

___Алекандровна____________Отчество



Руководитель___________________________  

		(подпись)

	

Зав. кафедры___________________________

		(подпись)





МОСКВА

2005г.


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

ФАКУЛЬТЕТ «КОМПЬЮТЕРНЫЕ ТЕХНОЛОГИИ В БИЗНЕСЕ»



Утверждаю

Декан Факультета ______________ Вартанов М.О.

«___» _________2005г.





ЗАДАНИЕ 

на курсовую работу по дисциплине 

"Базы данных"



студентке 31 группы Щербаковой Валерии





1. Тема: Разработка базы данных торговой организации.



	2. Исходные данные к работе:

	программная среда создания базы данных – СУБД MS Access;

	организационно-штатную структуру подразделения (отдела, компании, фирмы, организации), профиль деятельности определить самостоятельно;

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

	объем работы – 25-30 листов формата А4;

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

	

3.Содержание курсовой работы, перечень вопросов подлежащих разработке:

	Обосновать и разработать инфологическую модель исследуемого подразделения (отдела, компании, фирмы, организации).

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

	Создать запросы на выборку данных из одной и нескольких таблиц и изменение данных по различным информационным задачам и формам представления результата с использованием конструкций языка SQL и наглядно-диалоговых средств СУБД.

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

	Обосновать и оценить эффективность практического использования разработанного проекта и пути его дальнейшего совершенствования.

	4. Перечень иллюстративных материалов:

	текст курсовой работы с необходимыми рисунками и диаграммами;

	компьютерная презентация (при необходимости) к работе в среде MS PowerPoint;

	компьютерная реализация базы данных в среде СУБД MS Access.

	5. Руководитель работы: Захарченко Юрий Федорович



КАЛЕНДАРНЫЙ ПЛАН

№ п.п.

Наименование этапов работы

Срок выполнения этапов работы

При-меча-ние



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

1.11 – 10.11.05





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

10.11 – 20.11.05





Создание запросов на выборку и изменение данных по различным информационным задачам и формам представления результата с использованием конструкций языка SQL и наглядно-диалоговых средств СУБД.

20.11 – 30.11.05





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

30.11 – 15.12.05





Обоснование и оценка эффективности практического использования разработанного проекта и путей его дальнейшего совершенствования.

15.12 – 20.12.05





Оформление курсовой работы

20.12 – 25.12.05





Представление курсовой работы руководителю

к 27.12.2005





Руководитель______________________________(подпись) 

      Студент___________________________________(подпись)



Содержание



I.   Введение ........................................................................................................5 

II.  1.Создание базы данных ..............................................................................6

	     1.1 Этапы проектирования базы данных ..................................................6

           1.Определение цели создания базы данных.............................................6

           2.Определение таблиц, которые должна содержать база данных.......6

           3.Присвоение ключевых полей .................................................................7

           4.Редактирование структуры базы данных.............................................7

           5.Добавление данных и создание других объектов базы данных........7

        1.2 Инфологическая модель.......................................................................8

    2. Даталогическая модель.............................................................................10

	     2.1 Структура моей базы данных. Таблицы ...........................................10

	        2.2 Нормализация .....................................................................................13

	     2.3 Схема данных ......................................................................................14

    3. Создание пользовательского интерфейса ..............................................16

	     3.1 Запросы ................................................................................................16

	       3.2  Формы ..................................................................................................25

	       3.3 Отчеты ..................................................................................................29

	       3.4 Макросы ...............................................................................................31

   4.Основной интерфейс базы данных ...........................................................32

III.  Заключение.................................................................................................33

























Введение

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

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

Формирование и поддержание БД 

Обработка информации 

Прием запросов

Предоставление информации пользователям

Обеспечение целостности и реорганизации ценностей БД

Организация совместной работы пользователей



На сегодняшний день существует множество различных систем управления базами данных. Они все используют разные средства и функции, но преимущественно у всех СУБД в основе лежат одинаковые понятия. Поэтому для обобщения  этих понятий, приемов и методов на весь класс СУБД, я хотела бы  взять программу, входящую в Microsoft Office, Microsoft Access. 

Microsoft Access –реляционная СУБД, в которой предусмотрены все необходимые  средства для определения и обработки данных, а также управления ими при работе с большим объемом информации. 

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





		Создание базы данных

	

		. Этапы проектирования базы данных

1. Определение цели создания базы данных

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

Моя база данных разработана для торговой организации, занимающейся поставкой товаров – женской одежды – клиентам. Схема работы очень проста. Клиент организации ( все данные и контакты находятся в таблице Клиенты ) делает заказ на определенный товар (например, Майки, Lacoste, Без рисунка, по цене 3525 руб., 2 шт.). Этот заказ заносится в таблицу Заказанные_товары. Организация привозит со склада нужное количество и далее осуществляется сама сделка: клиент получает товар, а мы получаем деньги за выполненный заказ. После этого проданный организацией товар вносится в таблицу Выполненные заказы с пометкой выполнено. То есть фактически будут использоваться в основном 2 таблицы – на заказ товара и его выполнение. Остальные таблицы, формы, запросы базы  будут нужны для информационной, правильной, четкой, работы. Чтобы можно было сразу узнать кто заказал, кто производитель, описание товара , посчитать суммы заказов, сделать отбор по определенным данным, обновить, удалить, добавить товар, получить отчеты по товарам и клиентам и выйти из базы. 



     2. Определение таблиц, которые должна содержать база данных

	Один из наиболее сложных этапов в процессе создания базы данных  -  разработка таблиц, так как результаты, которые должна выдавать база данных не всегда дают полное представление о структуре таблицы.

	Таблицы должны содержать всю информацию разрабатываемой базы. В моем случае это Клиенты, Товары, Описание товаров, Выполненные 

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

    3. Присвоение ключевых полей

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

 

   4. Редактирование структуры базы данных

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



5.  Добавление данных и создание других объектов базы данных

	Если структуры таблиц отвечают поставленным требованиям, то можно вводить все данные (в режиме конструктора таблиц). После ввода создаются любые запросы, формы, отчеты, макросы и модули (удобнее, проще и правильнее создавать все с помощью мастеров). 

	

Инфологическая модель



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



Определяют три основные класса сущностей: 

стержневые 

ассоциативные 

характеристические.

Стержневая сущность – независимая сущность, которая имеет независимое существование, хотя может обозначать другие сущности.

Характеристическая сущность (характеристика) – это связь вида "многие-к-одному" или "одна-к-одной" между двумя сущностями (частный случай ассоциации). Цель характеристики состоит в описании или уточнении некоторой другой сущности предметной области.

Ассоциативная сущность (ассоциация) – это связь вида "многие-ко-многим" между двумя или более сущностями или экземплярами сущности.

	Это теория. Для наглядности покажу на примере торговой организации:

	

	Стержневая сущность 

	 «Заказ», «Заказчик», «Поставщик»

	    Заказ (Заказ, код_заказа, количество, цена,  характеристика)

	

	Заказчик  (Заказчик, телефон, адрес, название_фирмы)

	

	Поставщик (ФИО,  телефон, адрес, страна)

			

	Характеристическая сущность 

	«Выполненные_заказы», «Заказанные_товары»

	

	Выполненные_заказы (код_заказа, заказчик, дата_заказа, цена, дата_выполнения, количество)

	Заказанные_товары (код_товара, количество)

	























































	Даталогическая модель

Структура моей базы данных

Таблицы

Моя База Данных содержит 7 таблиц:

	-Товар

	- Производитель_товара

	- Описание_товара

	- Клиенты

	- Заказы

	- Заказанные_товары

- Выполненные заказы

Во всех таблицах в режиме конструктора указываются первичные или внешние ключи. 



Таблица Товар: предназначена для хранения всех товаров с полным  их описанием. Например, кем произведены, по какой цене и в каком количестве.



Номер – номер товара.  Поле является счетчиком.

Тип -  тип товара. Он берется из таблицы Описание_товара

Производитель – производитель товара. Берется из таблицы  производитель_товаров.

Характеристика – поле, где котором содержится описание товара. Данные вводятся вручную в режиме конструктора.

Цена – цена товара за одну единицу. Значение вводится вручную.

Количество – количество товаров. Если значение равно нулю, то товара нет в наличие. Цена вводится от руки. Чтобы систематизировать столбец, надо указать формат поля.





Дата поставки – день, месяц и год поставки товара. Вводится вручную.

Количество проданных товаров – от руки вводится количество товара. Поле заполняется с помощью запроса (заказанные_товары и клиенты)





Таблица Производитель_товара: содержит 4 поля:



Производитель – Поставщик фирма-производитель товара. 

Адрес, страна и телефон – более подробная информация. Все поля таблицы заполняются пользователем.

Таблица Описание_товара: состоит из двух полей:



Тип – тип товара (например: шубы, шорты и т.п.)

Описание типа – поле предоставляет более полную информацию о товаре. 



Таблица Клиенты: дает описание всех клиентов данной организации.



В таблице указывается ФИО,  адрес и телефон клиента.

Таблица Заказы: состоит из четырех полей :



Код заказа – код текущего заказа (тип поля – счетчик) 

Фирма – заказчики (представители фирм). Данные берутся из таблицы Клиенты.

Дата заказа – дата поступления заказа, данное поле заполняется автоматически.

Выполнен – Да / Нет. Если в этом поле стоит «галочка», то данный заказ уже выполнен (значение true).



Таблица Заказанные_товары: содержит три поля :



Номер -  код заказа.

КодТовара – код данного товара. Берется из таблицы Товар и вводится автоматически.

Количество – количество заказанного товара, которое не должно превышать количество товаров данного типа  в таблице Товар.



Таблица Выполненные заказы: содержит шесть полей, заполняется с помощью запроса и дает информацию про выполненные товары.



Код – код выполненного заказа

Фирма – название фирмы-заказчика. 

Дата заказа – дата поступления заказа.

Дата выполнения – дата выполнения заказа.

Количество – общее количество заказанных товаров любого типа. 

Сумма заказа – стоимость всех товаров в заказе.











2.2 Нормализация

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

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



Каждое поле любой таблицы должно быть уникальным.

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

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

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





Созданная мною таблица удовлетворяет вышеизложенным требованиям:

1 НФ (Нормальная Форма):

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

Ключевое поле

Товар

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

Описание_товара

Клиенты

Заказы

Заказанные_товары

Выполненные заказы

Номер, Производитель, Характеристика

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

Тип

Фирма

Код заказа

Id

Код заказа



2 НФ:

выполняются ограничения 1НФ, и каждый не ключевой атрибут функционально полно зависит от составного первичного ключа.

3 НФ: 

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

Таким образом, база данных удовлетворяет всем требованиям нормализации таблиц и Третья нормальная форма – окончательный результат нормализации моей Базы данных.





2.3 Схема данных

Отношения – это правила, поддерживаемые на уровне механизма реализации СУБД. Различают три типа отношений:



Отношение «один-к-одному»: для каждой строки в одной таблице существует не более одной строки связанной таблицы. 

Отношение «один-ко-многим»: одна таблица не содержит вообще или имеет набор связанных «дочерних» записей из другой таблицы. 

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

При разработке БД необходимо принимать во внимание правила обеспечения целостности данных (обеспечивает каскадное обновление

записей в связанных таблицах)



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





Также продавец выбирает производителя (из таблицы Производитель_товара). Далее он от руки вводит характеристику товара, его цену и количество в таблицу  Товар. 

При поступлении нового заказа, продавец в таблицу Заказы вводит  заказанные товары, нажав на «галочку» в графе «выполнен»,  а затем выбирает Фирму – заказчика.

Таблица Заказанные товары заполняется автоматически и хранит информацию, которая необходима для таблицы Заказы.

Ниже представлена моя схема данных:





Таблица Выполненные заказы  заполняется с помощью запроса, которому не требуются никакие связи, поэтому в данной схеме данных  этой таблицы нет.





3. Создание пользовательского интерфейса

3.1 Запросы

В моей БД содержатся 14 запросов всех типов:

запрос на обновление

 запрос на удаление

запрос на создание

запрос на выборку. 

Ниже я опишу каждый из запросов.





Запрос «Все клиенты»

Данный запрос при выполнении дает информацию обо всех клиентах организации – название фирмы, адрес, телефон и e-mail.



Данные для этого запроса берутся из таблицы Клиенты.

В режиме SQL запрос выглядит так: 

SELECT Клиенты.Фирма, Клиенты.Адрес, Клиенты.Телефон, Клиенты.[E-mail]

FROM Клиенты;



Запрос «Выборка по ценам типа товаров»

Данный запрос группирует все записи в таблице Товар по типу товаров и выводит : 

максимальную цену  товара 

минимальную цену товара 

общее количество товаров в таблице Товар

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



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

В режиме SQL запрос выглядит так: 

SELECT Товар.Тип, Min(Товар.Цена) AS [Минимальная Цена], Max(Товар.Цена) AS [Максимальная Цена], Sum(Товар.Количество) AS [Общее Кол-во]

FROM Товар

GROUP BY Товар.Тип;



Запрос «Добавление заказа»

Данный запрос добавляет заказы в таблицу Выполненные заказы невыполненные в таблице Заказы.  Запрос вносит в эту таблицу следующие данные ФИО клиента, Код заказа и Дату заказа, которые он берет из таблицы Заказы. Этот запрос проверяет, является поле Выполнен (в таблице Заказы) ложным или нет. Если да, то он берет эти данные, и подставляет в таблицу Выполненные заказы. Также в эту таблицу 

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

В режиме SQL запрос выглядит так: 

INSERT INTO [Выполненные заказы] ( [Код заказа], Фирма, [Дата заказа], [Дата выполнения], Количество, [Сумма заказа] )

SELECT Заказы.[Код заказа], Заказы.Фирма, Заказы.[Дата заказа], Date() AS [Дата выполнения], Sum(Товар.Количество) AS Количество, Sum(Заказанные_товары!Количество*Товар!Цена) AS Сумма

FROM Заказы INNER JOIN (Товар INNER JOIN Заказанные_товары ON Товар.Номер = Заказанные_товары.[Код товара]) ON Заказы.[Код заказа] = Заказанные_товары.Номер

GROUP BY Заказы.[Код заказа], Заказы.Фирма, Заказы.[Дата заказа], Date(), Заказы.Выполнен

HAVING (((Заказы.Выполнен)=False));



Запрос «Заказанные_товары и клиенты»

Данный запрос при выполнении выводит все заказанные товары, название фирмы – клиента, которая заказала товар, требуемое количество товара и его цену, а также дату поступления заказа на данный товар. Выборка осуществляется только по тем товарам, которые были заказаны хотя бы один раз. А данные для этого запроса находятся в таблицах Заказанные_товары, Клиенты и Товар. 





В режиме SQL запрос выглядит так: 

SELECT Заказы.Фирма, Товар.Тип, Товар.Производитель, Товар.Характеристика, Товар.Цена, Заказы.[Дата заказа], Товар.Количество

FROM (Клиенты INNER JOIN Заказы ON Клиенты.Фирма=Заказы.Фирма) INNER JOIN (Товар INNER JOIN Заказанные_товары ON Товар.Номер=Заказанные_товары.id) ON Заказы.[Код заказа]=Заказанные_товары.Номер;



«Запрос на Выборку всех клиентов с введенной буквы». 

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

В режиме SQL  данный запрос выглядит так :

SELECT Клиенты.Фирма, Клиенты.Адрес, Клиенты.Телефон

FROM Клиенты

WHERE (((Клиенты.Фирма) Like [Введите] & "*"));



«Запрос по  типу товара»

Простой запрос, который позволяет выводить товары (из таблицы Товар) по определенному типу. При этом дается описание товара – производитель, характеристика, цена, количество.

Ниже представлен результат выполнения данного запроса при введении товара «Шубы» :





В режиме SQL запрос выглядит так: 

SELECT Товар.Тип, Товар.Производитель, Товар.Характеристика, Товар.Цена, Товар.Количество

FROM Товар

WHERE (((Товар.Тип) Like [Введите тип] & "*"));







Запрос на обновление «Обновление заказа».

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



Например : В таблице Заказы есть заказ, состоящий из 5 товаров «Шорты, мини», содержащий название фирмы-заказчика и дату заказа. Данный заказ не выполнен, т.е. в поле Выполнен стоит значение ложь. Запустив запрос «Обновление заказа», происходит следующее: значение выполнен в таблице становится истиной (True), количество  имеющихся на складе товаров «Шорты, мини» уменьшается на 5, в то время как количество проданных на столько же увеличивается. 



В режиме SQL запрос выглядит так: 

UPDATE Заказы INNER JOIN (Товар INNER JOIN Заказанные_товары ON (Товар.Номер = Заказанные_товары.[Код товара]) AND (Товар.Номер = Заказанные_товары.[Код товара])) ON Заказы.[Код заказа] = Заказанные_товары.Номер SET Товар.Количество = Товар.Количество-Заказанные_товары.[Количество], Заказы.Выполнен = True, Товар.[Количество проданных] = Товар.[Количество проданных]+Заказанные_товары.[Количество]

WHERE (((Заказы.Выполнен)=False));



Запрос на «Создание таблицы уцененных товаров».

Этот запрос создает новую таблицу с уцененными товарами. Он работает следующим образом : 

При запуске запроса необходимо ввести процент уценения товаров, а затем дату. Запрос выбирает все товары, дата поставки которых соответствует введенной дате, и копирует их в новую таблицу Уцененные товары.

Например : 

Я запускаю запрос и ввожу процент  = 15



 и дату 07.01.05. В итоге у меня  получается таблица, содержащая 2 записи:



По сравнению с таблицей Товар цены действительно снизились на 15%.





В режиме SQL запрос выглядит так: 

SELECT Товар.Тип, Товар.Производитель, Товар.Характеристика, Товар.Цена*(1-[Введите процент уценения]/100) AS Выражение2, Товар.[Дата поставки] INTO [Уцененные товары]

FROM Товар

WHERE (((Товар.[Дата поставки])=[Введите дату]));



Запрос «Сумма всех товаров»

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



товаров. Чтобы посчитать сумму всех товаров, надо в режиме SQL умножить цену всех товаров на их количество. 



(сортировка по типу)

В режиме SQL запрос выглядит так: 

SELECT Товар.Тип, Товар.Производитель, Товар.Характеристика, Товар.Цена, Товар.Количество, Товар.Цена*Товар.Количество AS [Общая стоимость]

FROM Товар;Запрос на добавление;



Запрос «Сумма покупок клиентов»

Запрос выбирает всех клиентов, совершивших заказ, и выдает информацию о сумме заказа, о количестве заказанных товаров и о выполнении заказа.



Данный запрос необходим для определения частых клиентов и для рассмотрения возможности предоставления льгот и скидок постоянным заказчикам. Для построения запроса данные берутся из таблиц Заказы, Заказанные товары, Клиенты, Товар. 



В режиме SQL запрос выглядит так: 

SELECT Заказы.Фирма, Заказы.[Дата заказа], Sum(Заказанные_товары.Количество) AS [Кол-во], Sum(Заказанные_товары!Количество*Товар!Цена) AS Сумма, Заказы.Выполнен

FROM (Клиенты INNER JOIN Заказы ON Клиенты.Фирма=Заказы.Фирма) INNER JOIN (Товар INNER JOIN Заказанные_товары ON Товар.Номер=Заказанные_товары.id) ON Заказы.[Код заказа]=Заказанные_товары.Номер

GROUP BY Заказы.Фирма, Заказы.[Дата заказа], Заказы.Выполнен;



«Товар,  цена которого больше заданной»

Запрос, позволяющий выбирать товары с наибольшей стоимостью. В запросе выводятся товары (таблица Товар), у которых цена выше заданной суммы. 

Я ввела сумму 14200 и получила  результат:



В режиме SQL запрос выглядит так: 

SELECT Товар.Тип, Товар.Производитель, Товар.Характеристика, Товар.Цена

FROM Товар

WHERE (((Товар.Цена)=[введите цену] Or (Товар.Цена)>[введите цену]));



Запрос на «Товары с высокой стоимостью»

Запрос делает выборку из таблицы Товар по стоимости товаров и выдает информацию о 10 наиболее дорогостоящих. 

При построении запроса я использовала в режиме SQL предикат TOP10 – вывод на экран первые 10 товаров (без повторения). Помимо цен и самих товаров, прилагается еще характеристика товара и его фирма- производитель.







В режиме SQL запрос выглядит так: 

SELECT TOP 10 Товар.Тип, Товар.Производитель, Товар.Характеристика, Товар.Цена

FROM Товар

ORDER BY Товар.Цена DESC;



Запрос  на «Удаление Поставщика»

Данный запрос очень прост, но полезен. Он позволяет удалять из базы производителя, с которым мы больше не работаем, не открывая таблицы Производитель_товара.



В режиме SQL запрос выглядит так: 

DELETE Поставщик_товара.Поставщик, Поставщик_товара.Поставщик

FROM Поставщик_товара

WHERE (((Поставщик_товара.Поставщик)=[введите поставщика]));





















Формы

Формы создавать достаточно просто. Для этого в режиме «мастер форм» выбираются значения из таблиц и формируются по усмотрению  разработчика базы.

Моя База Данных содержит 11 форм: 





Форма «Все заказы».

Простая форма, выводящая все заказы, как выполненные, так и невыполненные. 





Форма «Выборка всех клиентов с введенной буквы»

Это простая форма, которая выводит всех клиентов с введенной буквы и :

позволяет вносить изменения о клиентах

позволяет добавлять новых клиентов





Форма «Выполненные заказы товаров»

Тоже достаточно простая форма, предназначенная только для просмотра выполненных заказов. 





Форма «Добавление товаров»

Эта форма позволяет добавлять товары в таблицу Товар. Форма имеет простое и удобное оформление и предназначена для работников склада. Данная форма позволяет добавлять новый товар и изменять существующий.

 





Форма «Заказанные товары и клиенты»

Форма предназначена для просмотра и исправления заказанных товаров и фирм-клиентов.





Форма «Клиенты и их заказы»

Эта форма позволяет просмотреть и изменить информацию о клиенте и его заказах. 





Форма «Клиенты организации».      

В этой форме предоставляется информация о клиентах организации. 



Данные берутся из таблицы Клиенты.





Форма «Общая форма»



В общей форме приведены все свойства товара – тип, производитель и т.п.



Форма «Отчет по производителям товара»

В данной форме при запуске появляется  вся информация по производителям товаров – название фирмы, страна, адрес, телефон.





Форма «Производители товаров»

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









3.3 Отчеты



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



Отчет по выполненным заказам.



Этот отчет создается в конструкторе и очень удобен в использовании. С его помощью можно просмотреть заказчика, дату заказа и исполнения заказа, количество товара и сумму заказа. Также отчет выводит итог по сумме и количеству всех заказов. Данные будут меняться автоматически в зависимости от выполнения новых заказов (будут добавляться).  





Отчет по заказам.



Этот отчет выдает характеристики заказанных товаров – тип, описание, производителя, а также условия заказа – кем, в каком количестве и на какую сумму был произведен заказ. Также подсчитывается общая сумма заказов.  Данные будут меняться автоматически в зависимости от поступления новых заказов (будут добавляться).



Отчет по клиентам организации.



Этот отчет нужен руководителям с целью ознакомления со всеми клиентами организации. Данные будут меняться автоматически в зависимости от появления новых клиентов (будут добавляться).

3.4 Макросы



Для создания макроса надо зайти в режим конструктора макроса и выбрать макрокоманду (например, «открыть запрос») и внизу, в аргументах макрокоманды, ввести данные :

-Имя таблицы

-Режим

-Режим данных

Проверяется работа макроса при нажатии ! («запуск»). 



  макросы моей базы данных



Эти макросы служат для:

Пометки о выполнении готовых, но еще не вписанных заказов

Выхода из базы данных

Для открытия всех заказов

Развертывания страницы в полный экран. 



















4.Основной интерфейс базы данных



Основным интерфейсом для СУБД MS Access служит главная кнопочная форма. Для ее открытия надо зайти так: 

Сервис  Служебные программы  Диспетчер кнопочных форм.





При загрузке базы данных открывается Кнопочная Форма. 

В ней можно:

Просмотреть список всех имеющихся товаров 

Добавить заказ и обновить список выполненных заказов

Получить информацию обо всех клиентах организации

Просмотреть список об уже выполненных заказах

И просмотреть все заказы.

Ну и, конечно, выйти обратно.









Заключение



Я разработала базы данных торговой организации по поставке одежды. 

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

Кнопочная форма позволяет просматривать отчеты о клиентах и товарах, делать заказы и обновлять данные.

На примере моей базы данных для торговой организации, я предоставила  к рассмотрению и анализу практически все функции и возможности Microsoft Accsess. Эта программа достаточна проста и удобна в обращении. Построение таблиц, отчетов, запросов, форм упрощается при использовании мастеров (форм, таблиц и т.п.). 



Я считаю, что база данных в среде СУБД MS Access  практическом применении удобна и достаточно эффективна. Все зависит от пользователя, объема располагаемых им знаний и умения ими воспользоваться. Говоря о себе могу сказать, что эта программа имеет много полезных функций и в дальнейшем мне очень пригодится.

























1