Uploaded by Матвей Покровский

база данных Учет оптовых продаж магазина

advertisement
Описание предметной области
Оптовый магазин закупает товар по цене закупки и продает товар по
цене продажи. Разница между ценой продажи и ценой закупки составляет
доход магазина от реализации каждой единицы товара. В магазине работает
несколько продавцов. Каждый продавец получает комиссионное
вознаграждение за проданный товар. Процент комиссионных назначается
индивидуально каждому продавцу. Размер комиссионного вознаграждения за
проданный товар определяется по формуле: Комиссионное вознаграждение
= Цена продажи единицы товара · Кол-во проданных единиц товара ·
Процент комиссионных. Прибыль от продажи нескольких единиц товара
вычисляется как (Цена продажи - Цена закупки) · Количество проданных
единиц товара.
Анализ описания предметной области позволяет выделить набор
данных, которые должны храниться в проектируемой базе данных:
1.
Наименование товара
2.
Единица измерения товара
3.
Цена закупки
4.
Цена продажи
5.
Дата продажи
6.
Количество проданных единиц товара
7.
Фамилия продавца
8.
Имя продавца
9.
Отчество продавца
10.
Процент комиссионных
Исходя из набора данных, которые должны храниться в БД, можно
выделить два информационных объекта: Товары (Наименование товара,
Единица измерения товара, Цена закупки), Продавцы (Фамилия продавца,
Имя продавца, Отчество продавца, Процент комиссионных)
Определим соответствующие таблицы ПРОДАВЦЫ и ТОВАРЫ (рис.
1). Ни одно из первоначально заданных полей таблицы ПРОДАВЦЫ не
определяет однозначно каждую запись таблицы, поэтому в таблицу введено
поле Код продавца, значения в котором будут уникальными для каждого
продавца. Это поле является первичным ключом таблицы ПРОДАВЦЫ и
будет определено в Microsoft Access как ключевое поле. С этой же целью в
таблицу ТОВАРЫ введен первичный ключ Код товара.
Рисунок 1: Таблицы ТОВАРЫ и ПРОДАВЦЫ проектируемой базы данных
В таблице ПРОДАВЦЫ будут храниться записи вида:
В таблице ТОВАРЫ будут храниться записи вида:
Один продавец может продавать различные товары. Один и тот же
товар может быть продан разными продавцами. Между таблицами
ПРОДАВЦЫ и ТОВАРЫ должна быть установлена связь типа «многие-комногим». Для организации такой связи потребуется новая таблица, в которую
ключевые поля связываемых таблиц войдут как внешние ключи. Такой
таблицей в нашем случае может быть таблица ПРОДАЖИ. Данные в эту
таблицу будут заноситься при продаже конкретного товара конкретным
продавцом. Из первоначального перечня атрибутов в эту таблицу войдет
атрибут Цена продажи и Дата продажи. В таблице ПРОДАЖИ также
определим ключевое поле Код продажи.
Установим связи между таблицами посредством совпадающих полей в
связываемых таблицах (рис. 2). Тип связи между таблицами ПРОДАВЦЫ и
ТОВАРЫ – «один-ко-многим». Здесь таблица ПРОДАВЦЫ находится на
стороне отношения «один», она является главной таблицей. Таблица
ТОВАРЫ находится на стороне отношения «многие» и является
подчиненной таблицей. Таблица ПРОДАЖИ является главной для связи
между таблицами ПРОДАЖИ и ТОВАРЫ (связь «один-ко-многим»). А связь
между таблицами ПРОДАВЦЫ и ПРОДАЖИ относится к типу «многие-комногим».
Рисунок 2: Связи между таблицами проектируемой базы
Определим свойства полей в каждой из таблиц (см. табл. 1, 2, 3). При
выборе имен полей рекомендуется выбирать короткие имена. Типы и
размеры полей выбираются исходя из характера информации, которую
предполагается хранить в поле.
Таблица 1: Свойства полей таблицы ПРОДАВЦЫ проектируемой БД
Имя поля в схеме данных
Имя поля в
компьютерной
БД
Тип поля
Код продавца
Код_продавца
счетчик
Фамилия продавца
Имя продавца
Отчество продавца
Процент комиссионных
Фамилия
Имя
Отчество
Процент
текстовый
текстовый
текстовый
числовой
Размер поля
устанавливается
автоматически
30 байт
20 байт
30 байт
длинное целое
Таблица 2: Свойства полей таблицы ТОВАРЫ проектируемой БД
Имя поля в схеме данных
Имя поля в
компьютерной БД
Тип поля
счетчик
Код товара
Код_товара
Наименование товара
Единица измерения товара
Наименование
текстовый
Единица_измерения текстовый
Цена закупки
Цена_закупки
денежный
Размер поля
устанавливается
автоматически
30 байт
20 байт
устанавливается
автоматически
Таблица 3: Свойства полей таблицы ПРОДАЖИ проектируемой БД
Имя поля в схеме данных
Имя поля в
компьютерной БД
Тип поля
Код продажи
Код_продажи
счетчик
Код товара
Код продавца
Дата продажи
Код_товара
Код_продавца
Дата_продажи
числовой
числовой
дата/время
Цена продажи
Цена_продажи
денежный
Размер поля
устанавливается
автоматически
длинное целое
длинное целое
устанавливается
автоматически
Download