Анализ системы управления базами данных, основные задачи: обработка информации, организация работы пользователей. Access как функционально полная система, имеющая мощные средства для работы программы. Этапы разработки базы данных торговой организации.
Аннотация к работе
SELECT Заказы.[Код заказа], Заказы.Фирма, Заказы.[Дата заказа], Date() AS [Дата выполнения], Sum(Товар.Количество) AS Количество, Sum(Заказанные_товары!Количество*Товар!Цена) AS Сумма FROM Заказы INNER JOIN (Товар INNER JOIN Заказанные_товары ON Товар.Номер = Заказанные_товары.[Код товара]) ON Заказы.[Код заказа] = Заказанные_товары.Номер SELECT Заказы.Фирма, Товар.Тип, Товар.Производитель, Товар.Характеристика, Товар.Цена, Заказы.[Дата заказа], Товар.Количество FROM (Клиенты INNER JOIN Заказы ON Клиенты.Фирма=Заказы.Фирма) INNER JOIN (Товар INNER JOIN Заказанные_товары ON Товар.Номер=Заказанные_товары.id) ON Заказы.[Код заказа]=Заказанные_товары.Номер; UPDATE Заказы INNER JOIN (Товар INNER JOIN Заказанные_товары ON (Товар.Номер = Заказанные_товары.[Код товара]) AND (Товар.Номер = Заказанные_товары.[Код товара])) ON Заказы.[Код заказа] = Заказанные_товары.Номер SET Товар.Количество = Товар.Количество-Заказанные_товары.[Количество], Заказы.Выполнен = True, Товар.[Количество проданных] = Товар.[Количество проданных] Заказанные_товары.[Количество]Я разработала базы данных торговой организации по поставке одежды. С помощью моей базы можно без затруднений и специальных знаний вести базу данных, которая позволяет делать все операции с клиентами, заказами, производителями. Кнопочная форма позволяет просматривать отчеты о клиентах и товарах, делать заказы и обновлять данные.
Введение
база данный программа access
Базы данных - совокупность данных, организованная по определенным правилам, предусматривающая общие принципы описания, хранения, манипулирования данными, независимыми от прикладных программ.
СУБД - система управления базами данных - совокупность программ, предназначенных для управления БД и возможности получения пользователями необходимой информации из базы. В задачи СУБД входят следующие задачи: · Формирование и поддержание БД
· Обработка информации
· Прием запросов
· Предоставление информации пользователям
· Обеспечение целостности и реорганизации ценностей БД
· Организация совместной работы пользователей
На сегодняшний день существует множество различных систем управления базами данных. Они все используют разные средства и функции, но преимущественно у всех СУБД в основе лежат одинаковые понятия. Поэтому для обобщения этих понятий, приемов и методов на весь класс СУБД, я хотела бы взять программу, входящую в Microsoft Office, Microsoft Access.
Microsoft Access -реляционная СУБД, в которой предусмотрены все необходимые средства для определения и обработки данных, а также управления ими при работе с большим объемом информации.
Access - функционально полная система, имеющая мощные средства для работы в этой программе. Ее преимуществом перед другими является простота, наличие всех средств для успешной обработки и управления БД.
Таблицы
База Данных содержит 7 таблиц: -Товар
- Производитель товара
- Описание товара
- Клиенты
- Заказы
- Заказанные товары
- Выполненные заказы
Во всех таблицах в режиме конструктора указываются первичные или внешние ключи.
Таблица Товар: предназначена для хранения всех товаров с полным их описанием. Например, кем произведены, по какой цене и в каком количестве.
Номер - номер товара. Поле является счетчиком.
Тип - тип товара. Он берется из таблицы Описание_товара
Производитель - производитель товара. Берется из таблицы производитель_товаров.
Характеристика - поле, где котором содержится описание товара. Данные вводятся вручную в режиме конструктора.
Цена - цена товара за одну единицу. Значение вводится вручную.
Количество - количество товаров. Если значение равно нулю, то товара нет в наличие. Цена вводится от руки. Чтобы систематизировать столбец, надо указать формат поля.
Рис.
Дата поставки - день, месяц и год поставки товара. Вводится вручную.
Количество проданных товаров - от руки вводится количество товара. Поле заполняется с помощью запроса (заказанные_товары и клиенты)
Адрес, страна и телефон - более подробная информация. Все поля таблицы заполняются пользователем.
Таблица Описание_товара: состоит из двух полей:
Тип - тип товара (например: шубы, шорты и т.п.)
Описание типа - поле предоставляет более полную информацию о товаре.
Таблица Клиенты: дает описание всех клиентов данной организации.
В таблице указывается ФИО, адрес и телефон клиента.
Таблица Заказы: состоит из четырех полей :
Код заказа - код текущего заказа (тип поля - счетчик)
Фирма - заказчики (представители фирм). Данные берутся из таблицы Клиенты.
Дата заказа - дата поступления заказа, данное поле заполняется автоматически.
Выполнен - Да / Нет. Если в этом поле стоит «галочка», то данный заказ уже выполнен (значение true).
Таблица Заказанные_товары: содержит три поля :
Номер - код заказа.
КОДТОВАРА - код данного товара. Берется из таблицы Товар и вводится автоматически.
Количество - количество заказанного товара, которое не должно превышать количество товаров данного типа в таблице Товар.
Таблица Выполненные заказы: содержит шесть полей, заполняется с помощью запроса и дает информацию про выполненные товары.
Код - код выполненного заказа
Фирма - название фирмы-заказчика.
Дата заказа - дата поступления заказа.
Дата выполнения - дата выполнения заказа.
Количество - общее количество заказанных товаров любого типа.
Сумма заказа - стоимость всех товаров в заказе.
Таблица
Название таблицы Ключевое поле
Товар Производитель_товара Описание_товара Клиенты Заказы Заказанные_товары Выполненные заказы Номер, Производитель, Характеристика Производитель Тип Фирма Код заказа Id Код заказа
Схема данных
Отношения - это правила, поддерживаемые на уровне механизма реализации СУБД.
В моей схеме данных таблицы связаны следующим образом. При добавлении нового товара, продавец выбирает тип (товара), который с помощью мастера подстановки берется из таблицы Описание_товара.
Также продавец выбирает производителя (из таблицы Производитель_товара). Далее он от руки вводит характеристику товара, его цену и количество в таблицу Товар.
При поступлении нового заказа, продавец в таблицу Заказы вводит заказанные товары, нажав на «галочку» в графе «выполнен», а затем выбирает Фирму - заказчика.
Таблица Заказанные товары заполняется автоматически и хранит информацию, которая необходима для таблицы Заказы.
Ниже представлена моя схема данных:
Рис.
Таблица Выполненные заказы заполняется с помощью запроса, которому не требуются никакие связи, поэтому в данной схеме данных этой таблицы нет.
Запросы
В моей БД содержатся 14 запросов всех типов: · запрос на обновление
· запрос на удаление
· запрос на создание
· запрос на выборку.
Ниже я опишу каждый из запросов.
Рис.
Запрос «Все клиенты»
Данный запрос при выполнении дает информацию обо всех клиентах организации - название фирмы, адрес, телефон и e-mail.
Таблица
Данные для этого запроса берутся из таблицы Клиенты
Данный запрос группирует все записи в таблице Товар по типу товаров и выводит: · максимальную цену товара
· минимальную цену товара
· общее количество товаров в таблице Товар
При выполнении запрос выглядит так: Таблица
Данные для создания запроса берутся из таблицы Товар, а для подсчета максимальной и минимальных цен в режиме SQL вводим данные и с помощью Sum выводятся нужные нам цены.
SELECT Товар.Тип, Min(Товар.Цена) AS [Минимальная Цена], Max(Товар.Цена) AS [Максимальная Цена], Sum(Товар.Количество) AS [Общее Колво]
FROM Товар
GROUP BY Товар.Тип;
Запрос «Добавление заказа»
Данный запрос добавляет заказы в таблицу Выполненные заказы невыполненные в таблице Заказы. Запрос вносит в эту таблицу следующие данные ФИО клиента, Код заказа и Дату заказа, которые он берет из таблицы Заказы. Этот запрос проверяет, является поле Выполнен (в таблице Заказы) ложным или нет. Если да, то он берет эти данные, и подставляет в таблицу Выполненные заказы. Также в эту таблицу вставляются данные о том, когда был выполнен заказ, количество товаров, заказанное данным клиентом и сумму покупки.
SELECT Заказы.[Код заказа], Заказы.Фирма, Заказы.[Дата заказа], Date() AS [Дата выполнения], Sum(Товар.Количество) AS Количество, Sum(Заказанные_товары!Количество*Товар!Цена) AS Сумма
FROM Заказы INNER JOIN (Товар INNER JOIN Заказанные_товары ON Товар.Номер = Заказанные_товары.[Код товара]) ON Заказы.[Код заказа] = Заказанные_товары.Номер
GROUP BY Заказы.[Код заказа], Заказы.Фирма, Заказы.[Дата заказа], Date(), Заказы.Выполнен
HAVING (((Заказы.Выполнен)=False));
Запрос «Заказанные_товары и клиенты»
Данный запрос при выполнении выводит все заказанные товары, название фирмы - клиента, которая заказала товар, требуемое количество товара и его цену, а также дату поступления заказа на данный товар. Выборка осуществляется только по тем товарам, которые были заказаны хотя бы один раз. А данные для этого запроса находятся в таблицах Заказанные_товары, Клиенты и Товар.
FROM (Клиенты INNER JOIN Заказы ON Клиенты.Фирма=Заказы.Фирма) INNER JOIN (Товар INNER JOIN Заказанные_товары ON Товар.Номер=Заказанные_товары.id) ON Заказы.[Код заказа]=Заказанные_товары.Номер;
Запрос «Выборка всех клиентов с введенной буквы»
При запуске этого запроса он требует ввести букву или несколько букв, с которых начинается название фирмы - клиента (данные из таблицы Клиенты). Данный запрос довольно прост, но необходим. Например если продавец помнит первую букву или несколько букв, то он запускает данный запрос и вводит, ту букву, которую помнит, а в ответ на введенную букву запрос выводит название всех фирм на указанную букву.
Простой запрос, который позволяет выводить товары (из таблицы Товар) по определенному типу. При этом дается описание товара - производитель, характеристика, цена, количество.
Ниже представлен результат выполнения данного запроса при введении товара «Шубы» :
Запрос, который обновляет количество товаров (в том числе и проданных) в таблице Товар, а также он обновляет поле Выполнен в таблице Заказы. Запрос работает следующим образом: если в таблице Заказы в поле Выполнен есть заказы с ложным значением (False), то данный запрос обновляет все товары, которые содержатся в данном заказе в таблице Товар.
Например: В таблице Заказы есть заказ, состоящий из 5 товаров «Шорты, мини», содержащий название фирмы-заказчика и дату заказа. Данный заказ не выполнен, т.е. в поле Выполнен стоит значение ложь. Запустив запрос «Обновление заказа», происходит следующее: значение выполнен в таблице становится истиной (True), количество имеющихся на складе товаров «Шорты, мини» уменьшается на 5, в то время как количество проданных на столько же увеличивается.
UPDATE Заказы INNER JOIN (Товар INNER JOIN Заказанные_товары ON (Товар.Номер = Заказанные_товары.[Код товара]) AND (Товар.Номер = Заказанные_товары.[Код товара])) ON Заказы.[Код заказа] = Заказанные_товары.Номер SET Товар.Количество = Товар.Количество-Заказанные_товары.[Количество], Заказы.Выполнен = True, Товар.[Количество проданных] = Товар.[Количество проданных] Заказанные_товары.[Количество]
WHERE (((Заказы.Выполнен)=False));
Запрос «Создание таблицы уцененных товаров»
Этот запрос создает новую таблицу с уцененными товарами. Он работает следующим образом : При запуске запроса необходимо ввести процент уценения товаров, а затем дату. Запрос выбирает все товары, дата поставки которых соответствует введенной дате, и копирует их в новую таблицу Уцененные товары.
Например : Я запускаю запрос и ввожу процент = 15
Рис. и дату 07.01.05. В итоге у меня получается таблица, содержащая 2 записи: Таблица
По сравнению с таблицей Товар цены действительно снизились на 15%.
Таблица
SELECT Товар.Тип, Товар.Производитель, Товар.Характеристика, Товар.Цена*(1-[Введите процент уценения]/100) AS Выражение2, Товар.[Дата поставки] INTO [Уцененные товары]
FROM Товар
WHERE (((Товар.[Дата поставки])=[Введите дату]));
Запрос «Сумма всех товаров»
Этот запрос позволяет определить, сколько на складе товара каждого типа и его цену, а также общую стоимость всей партии каждого товара. Все данные для запроса из таблицы Товар. Я считаю этот запрос полезным, так как с его помощью можно определить общую стоимость всех имеющихся товаров. Чтобы посчитать сумму всех товаров, надо в режиме SQL умножить цену всех товаров на их количество.
Таблица
SELECT Товар.Тип, Товар.Производитель, Товар.Характеристика, Товар.Цена, Товар.Количество, Товар.Цена*Товар.Количество AS [Общая стоимость]
FROM Товар;Запрос на добавление;
Запрос «Сумма покупок клиентов»
Запрос выбирает всех клиентов, совершивших заказ, и выдает информацию о сумме заказа, о количестве заказанных товаров и о выполнении заказа.
Таблица
Данный запрос необходим для определения частых клиентов и для рассмотрения возможности предоставления льгот и скидок постоянным заказчикам. Для построения запроса данные берутся из таблиц Заказы, Заказанные товары, Клиенты, Товар.
SELECT Заказы.Фирма, Заказы.[Дата заказа], Sum(Заказанные_товары. Количество) AS [Колво], Sum(Заказанные_товары!Количество*Товар!Цена) AS Сумма, Заказы.Выполнен
FROM (Клиенты INNER JOIN Заказы ON Клиенты.Фирма=Заказы.Фирма) INNER JOIN (Товар INNER JOIN Заказанные_товары ON Товар.Номер=Заказанные_товары.id) ON Заказы.[Код заказа]=Заказанные_товары.Номер
GROUP BY Заказы.Фирма, Заказы.[Дата заказа], Заказы.Выполнен;
Запрос «Товар, цена которого больше заданной»
Запрос, позволяющий выбирать товары с наибольшей стоимостью. В запросе выводятся товары (таблица Товар), у которых цена выше заданной суммы. Я ввела сумму 14200 и получила результат: Таблица
WHERE (((Товар.Цена)=[введите цену] Or (Товар.Цена)>[введите цену]));
Запрос «Товары с высокой стоимостью»
Запрос делает выборку из таблицы Товар по стоимости товаров и выдает информацию о 10 наиболее дорогостоящих.
При построении запроса я использовала в режиме SQL предикат TOP10 - вывод на экран первые 10 товаров (без повторения). Помимо цен и самих товаров, прилагается еще характеристика товара и его фирма- производитель.
Таблица
SELECT TOP 10 Товар.Тип, Товар.Производитель, Товар.Характеристика, Товар.Цена
FROM Товар
ORDER BY Товар.Цена DESC;
Запрос «Удаление Поставщика»
Данный запрос очень прост, но полезен. Он позволяет удалять из базы производителя, с которым мы больше не работаем, не открывая таблицы Производитель_товара.
WHERE (((Поставщик_товара.Поставщик)=[введите поставщика]));
Вывод
Я разработала базы данных торговой организации по поставке одежды. С помощью моей базы можно без затруднений и специальных знаний вести базу данных, которая позволяет делать все операции с клиентами, заказами, производителями. То есть добавлять, изменять, обновлять, удалять и просматривать все имеющиеся и вводимые данные.
Кнопочная форма позволяет просматривать отчеты о клиентах и товарах, делать заказы и обновлять данные.
На примере моей базы данных для торговой организации, я предоставила к рассмотрению и анализу практически все функции и возможности Microsoft Accsess. Эта программа достаточна проста и удобна в обращении. Построение таблиц, отчетов, запросов, форм упрощается при использовании мастеров (форм, таблиц и т.п.).
Я считаю, что база данных в среде СУБД MS Access практическом применении удобна и достаточно эффективна. Все зависит от пользователя, объема располагаемых им знаний и умения ими воспользоваться. Говоря о себе могу сказать, что эта программа имеет много полезных функций и в дальнейшем мне очень пригодится.
Список литературы
1.ИОСУ. Методические указания к курсовому проектированию.
2.Лекции по информационному обеспечению систем управления.