Структура базы данных
Рассмотрение особенностей проектирования структуры базы данных учета реализуемых товаров в магазине. Определение назначения разрабатываемой системы. Выявление основных требований к её функциям и информации. Определение сущностей и взаимосвязей данных.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | задача |
Язык | русский |
Дата добавления | 04.10.2015 |
Размер файла | 17,0 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Содержание
Задание
1. Уточнение задачи
2. Анализ предметной области. Определение сущностей и взаимосвязей
3. Нормализация
Задание
Спроектировать структуру базы данных учета товаров в магазине. База данных должна содержать информацию:
1)О имеющихся товарах:
а)наименование;
б)цена покупки;
в)цена продажи;
г)ед. измерения;
д)кол-во товара.
2)О приходе товара:
а)какой товар;
б)когда принят;
в)кем принят;
г)в каком объеме принят;
д)от кого принят.
3)О продаже товара:
а)какой товар;
б)когда продан;
в)кем продан;
г)в каком объеме продан;
д)кому продан.
4)О поставщиках и покупателях:
а)название;
б)юридический адрес;
в)телефон;
г)банковские реквизиты;
5)О персонале:
а)ФИО;
б)паспортные данные
в)должность:
г)адрес;
д)телефон;
е)срок работы;
1. Уточнение задачи
1)Назначение разрабатываемой системы
Система показывает востребованность покупателей в том или ином товаре. Система помогает подсчитывать прибыль и убытки магазина. Её использованием будут заниматься обслуживающий персонал, а главным образом бухгалтер (подсчитывая общую прибыль), кассир (для выявления стоимости товаров в момент покупки). Также люди занимающиеся поставкой необходимого товара (для определения затрат грузоперевозки товара). Изложенная информация в ней будет передаваться управляющему и директору магазина. Появиться возможность выявить некоторые недочеты товара, необходимость закупки тех или иных продукций, определить контингент покупателей данного магазина, составить список других предприятий с которыми можно сотрудничать.
2)Требование к функциям системы
Разберем и опишем функции данной системы. В функции входит расчет прибыли магазина в целом и от каждого товара в частности. Это помогает определить необходимо ли закупать тот или иной товар, найти наиболее выгодные предложения для его закупки. А главным образом, стоит ли держать такой магазин, если он не имеет достаточной прибыли. Также функция расчета количества мест необходимого для хранения поставляемой продукции. Она дает возможность определить наименее затратный вариант его поставки. Система помогает ориентироваться в большом количестве поставляемых товаров. Упрощает поиски описания товара, если это необходимо продавцу. Система дает возможность избежать утерю и порчу товара или по крайней мере определить виновника. Также по необходимости можно связаться с работниками магазина с помощью этих данных. Система помогает в последствии вести работу с наиболее приоритетными клиентами и поставщиками для нахождения постоянного дохода магазина и увеличения всего объема доходов в частности.
3)Требование к информации системы
Исходя из вышеперечисленных данных, разберем необходимость использования той или иной информации. Для определения расчета прибыли от каждого товара необходимо четко знать наименование товара, без него можно запутаться в большом количестве разных марок. Необходимо также внести информацию в базу данных о цене покупки и продажи. Определения количество необходимого места под товар невозможно без записи единиц измерения и количества товара.
Для того чтобы ориентировать в огромном количестве поставляемого товара нужно ответить на вопросы: какой товар? (нужно знать точно что заказывать и по нему будет строится данные таблицы) когда принят/продан? (время реализации товара) кем принят / кем продан? (необходимо знать имя этого человека чтобы после связаться с ним при появлении каких-либо проблем - порча, утеря товара) в каком объеме принят/продан? (для того чтобы прослеживать какой объем реализации и смогли ли реализовать товар полностью или товар в избытке) от кого принят / кому продан? (для того чтобы следить за клиентской базой и обслуживающим персоналом).
Для того чтобы знать контактные данные того или иного поставщика или покупателя необходимо знать: его имя, адрес, телефон, банковские реквизиты (для того чтобы знать каким способом будет оплачиваться товар).
Чтобы прослеживать свой персонал необходимо знать ФИО, паспортные данные (возможность по нормам права работать в данном заведении), должность (для определения в будущем его карьерного роста), адрес и телефон (чтобы по необходимости с человеком можно было связаться), срок работы (это имеет отношение к должности и к карьерному росту в частности).
2. Анализ предметной области
база учет магазин реализуемый
Определение сущностей и взаимосвязей
Необходимо связать информацию таблиц базы данных. Для этого возьмем сведенья о имеющихся товарах, о приходе товара и о его продаже. Выделим сущности: "Товар", "Приход товара", "Продажа товара", " Поставщики и покупатели", " Персонал". Изобразим эти сущности в виде схемы:
Товар
название товара
цена покупки
цена продажи
ед. измерения
кол-во товара
Приход товара
название товара
дата
приемщик
ед. измерения
кол-во товара
поставщик
Продажа товара
название товара
дата
продавец
ед. измерения
кол-во товара
покупатель
Поставщики и покупатели
имя
адрес
телефон
банковские реквизиты
Персонал
имя
паспортные данные
должность
адрес
телефон
срок работы
Рассмотрим сущности "Товар", "Приход товара" и "Продажа товара. Один товар хранящийся в магазине может быть продан нескольким клиентам. Каждый клиент несколько товаров. Поэтому связь между сущностью товар и приход-продажа товара "многие ко многим".
Найдем взаимосвязи между информацией о приходе товара ("Приход товара") и о продаже товара ("Продажа товара") с информацией о поставщиках и покупателей ("Поставщики и покупатели"). Один товар, поступающий в магазин, может быть куплен у нескольких поставщиков, также как и один товар, продающийся в магазин, может быть продан нескольким клиентам. Каждый поставщик и покупатель связан с несколькими товарами. Поэтому связь между сущностью приход-продажа товара и поставщики и покупатели "многие ко многим".
Найдем взаимосвязи между информацией о продаже товара ("Продажа товара") с информацией о персонале ("Персонал"). Один человек, продавший товар, связан с одной записью о персонале. Каждая запись о персонале, соответствует одному продавцу. Поэтому связь между сущностью продажа товара и персонал "один к одному".
3. Нормализация
Нормализация будет проходить в три этапа:
а)переход к первой нормальной форме;
б)переход ко второй нормальной форме;
в)переход к третей нормальной форме;
Суть этапа (а) состоит в том чтобы заданные нами таблицы имели простую форму, в них не было одинаковых по смыслу полей, а также не было составных полей и одинаковых записей. Таблицы представлены в простой форме, так как не имеют объединенных ячеек и полей. Если рассматривать каждую из таблиц по отдельности, то можно заметить что здесь нет одинаковых по смыслу полей. А если попытаться подставить данные в эту таблицу, то можно заметить невозможность появления одинаковых записей.
Персонал
имя
паспортные данные
должность
адрес
телефон
срок работы
Для того чтобы таблицы соответствовали 3 условию этапа (а), необходимо провести анализ функций системы. Рассмотрим таблицы "Поставщики и покупатели" и "Персонал". Данный магазин может иметь сеть с разными городами и покупатели возможно захотят заказать товар в другой город. Поэтому необходимо разделить поле "адрес" на "город" и "адрес".
Персонал
имя
паспортные данные
должность
город
адрес
телефон
срок работы
Поставщики и покупатели
имя
город
адрес
телефон
банковские реквизиты
Похожим образом поступим и с таблицей "Поставщики и покупатели". Если мы рассматриваем банковские реквизиты поставщиков и покупателей магазина, то необходимо знать возможность данного магазина перечислять деньги или получать с их счетов, то есть сотрудничать с конкретными банками в которых принимают такие то карты. Тогда для этой таблицы целесообразно разделить поле "банковские реквизиты" на "банковские реквизиты" и "способы оплаты". Во втором поле будет представлен список возможности оборотов денег с данным лицом.
Поставщики и покупатели
имя
город
адрес
телефон
банковские реквизиты
способы оплаты
Этапа (б) состоит из 4 пунктов:
1)Определение первичного ключа;
2)Анализ зависимостей между полями таблицы;
3) Разделение таблиц. (при необходимости);
4)Дополнительные преобразования (при необходимости);
Таким образом, шагом (1) мы будем определять первичный ключ для каждой таблице. Для таблицы "Товар" первичным ключом является "название товара", так как он является уникальным полем (в таблице "Товар" не могут существовать одинаковые по названию товары). Тогда для таблицы "Приход товара", с учетом того что не одно из полей не является уникальным, первичным ключом являются поля "название товара", "дата", "приемщик" и "поставщик" (появление одинаковых записей исключено при этом первичном ключе, а если и представить что две такие записи можно создать, то они будут объединены в одну и сложены по количеству товаров). Такая же ситуация и в таблице "Продажа товара", где первичным ключом являются поля "название товара", "дата", "продавец" и "покупатель".
В таблице "Персонал" есть уникальное поле "паспортные данные", оно и является первичный ключ. А в таблице "Поставщики и покупатели, таких полей нет, поэтому за уникальный ключ возьмем поля "имя", "адрес" и "телефон" (При таких полях не буду появляться одинаковые записи, так как если даже окажется что два человека с одинаковым именем живут по одному и тому же адресу, то невозможно что у них будет один и тот же номер телефона).
Таким образом структура таблицы примет следующий вид:
Товар
название товара
цена покупки
цена продажи
ед. измерения
кол-во товара
Приход товара
название товара
дата
приемщик
поставщик
ед. измерения
кол-во товара
Продажа товара
название товара
дата
продавец
покупатель
ед. измерения
кол-во товара
Поставщики и покупатели
имя
адрес
телефон
банковские реквизиты
Персонал
паспортные данные
имя
должность
адрес
телефон
срок работы
В пункт (2) необходимо проанализировать зависимости между полями таблицы. В нашем случае целесообразно разделить таблицу "Приход товара" на две таблицы: "Приход товара" с полями "название товара", "дата", "приемщик", "поставщик", "кол-во товара" и таблицу "Товар 1" с полями "название товара" и "ед. измерения" (Так как кол-во товара - характеристика прихода товара, которая зависит от первичного ключа, а ед. измерения - зависит от товара). Также поступим и с таблицей "Продажа товара", разделив ее на две таблицы: "Продажа товара" с полями "название товара", "дата", "продавец", "покупатель", "кол-во товара" и таблицу "Товар 2" с полями "название товара" и "ед. измерения". Причем в этих двух таблицах первичным ключем будет поле "название товара", так как это поле уникальное. Таблицы станут выглядеть следующим образом:
Товар
название товара
цена покупки
цена продажи
ед. измерения
кол-во товара
Приход товара
название товара
дата
приемщик
поставщик
кол-во товара
Продажа товара
название товара
дата
продавец
покупатель
кол-во товара
Товар 1
название товара
Ед. измерения
Товар 2
название товара
Ед. измерения
Поставщики и покупатели
имя
адрес
телефон
банковские реквизиты
Персонал
паспортные данные
имя
должность
адрес
телефон
срок работы
Заметим связь между таблицами "Товар", "Товар 1" и "Товар 2". Объединим все эти таблицы в одну под названием "Товар". Таким образом получим:
Товар
название товара
цена покупки
цена продажи
ед. измерения
кол-во товара
Приход товара
название товара
дата
приемщик
поставщик
кол-во товара
Продажа товара
название товара
дата
продавец
покупатель
кол-во товара
Поставщики и покупатели
имя
адрес
телефон
банковские реквизиты
Персонал
паспортные данные
имя
должность
адрес
телефон
срок работы
Этап (в) состоит в том, чтобы избавиться от транзитивных зависимостей (это такие связи между полями при наличии которых каждое значение одного поля можно выразить через соответствия значений других полей). В нашем случае таких зависимостей нет. Поэтому последний вариант таблиц является нормализованным.
Размещено на Allbest.ru
...Подобные документы
Теоретические основы проектирования и разработки баз данных, правила формирования отношений из диаграмм ER-типа. Определение сущностей и их взаимосвязей, атрибутов и ключей. Разработка модели базы данных, повышение производительности доступа к информации.
курсовая работа [1,5 M], добавлен 24.12.2011Авторизация с каталогами проектирования базы данных магазина. Задачи базы данных: учет всех товаров, поиск и выдача данных о клиентах, адрес, телефоны, цена и наличие товара. Этапы проектирования базы данных. Схема данных, создание запросов и их формы.
реферат [1,6 M], добавлен 22.10.2009Характеристика основных этапов разработок и проектирования базы данных, определение целей ее создания и функциональных особенностей, предметной области и необходимой информации. Требования к инфологической модели. Методы физической организации данных.
курсовая работа [1,7 M], добавлен 22.02.2011Описание предметной области разрабатываемой базы данных для теннисного клуба. Обоснование выбора CASE-средства Erwin 8 и MS Access для проектирования базы данных. Построение инфологической модели и логической структуры базы данных, разработка интерфейса.
курсовая работа [3,8 M], добавлен 02.02.2014Формы представляемой информации. Основные типы используемой модели данных. Уровни информационных процессов. Поиск информации и поиск данных. Сетевое хранилище данных. Проблемы разработки и сопровождения хранилищ данных. Технологии обработки данных.
лекция [15,5 K], добавлен 19.08.2013Общая характеристика инфологической модели информационной системы. Знакомство с особенностями проектирования базы данных "Библиотека", анализ основных этапов. Рассмотрение способов составления запросов по выборке информации из таблиц базы данных.
контрольная работа [831,2 K], добавлен 08.12.2013Информационный анализ и выявление основных сущностей предметной области. Определение взаимосвязей сущностей. Построение концептуальной модели. Логическое моделирование базы данных "Компьютерный мир". Технология сбора, передачи и обработки информации.
курсовая работа [1,9 M], добавлен 13.02.2014Этапы проектирования базы данных. Инфологическое проектирование. Определение требований к операционной обстановке. Выбор СУБД и других программных средств. Логическое и физическое проектирование реляционной базы данных. Технология доступа к информации.
курсовая работа [2,3 M], добавлен 06.10.2016Выбор средств разработки базы данных для информационного функционирования аэропорта. Выделение и нормализация сущностей. Логическая схема и физическая структура базы данных. Спецификация и тестирование функций, процедур, триггеров, представлений.
курсовая работа [1,5 M], добавлен 07.06.2013Разновидности систем управления базами данных. Анализ предметной области. Разработка структуры и ведение базы данных. Структурированный язык запросов SQL. Организация выбора информации из базы данных. Общие принципы проектирования экранных форм, макросов.
курсовая работа [3,1 M], добавлен 26.02.2016Освоение методов проектирования баз данных и работы с базами данных в среде СУБД. Ведение точного учета поступивших и реализованных товаров и определение их остатка с помощью БД "Оптовый магазин". Преимущества и недостатки спроектированной базы данных.
курсовая работа [4,8 M], добавлен 12.01.2015Проектирование базы данных в среде СУБД MS Access. Автоматизация учета информации о товаре в магазине. Определение требований и функций системы. Анализ предметной области. Разработка, создание таблиц, запросов, форм и отчетов. Инструкция для пользователя.
отчет по практике [523,6 K], добавлен 21.04.2014Что такое базы данных, визуализация информации базы. Структура и свойства простейшей базы данных. Характеристика определений, типов данных, безопасность, специфика формирования баз данных. Подходы к проектированию технического задания. Работа с таблицами.
презентация [4,3 M], добавлен 12.11.2010Рассмотрение основных этапов проектирования базы данных "Расписание": создание информационных таблиц, определение схем для связи данных в реестрах. Изучение методов организации форм (режимы автоматический, Мастер, конструктор), запросов и отчетов.
курсовая работа [1,7 M], добавлен 06.02.2010Описание торговой сети, сбор данных, которые должны содержаться в базе данных. Определение сущностей и атрибутов и построение концептуальной модели. Переход к физической модели. Определение таблиц, полей и типов данных. Определение связей между таблицами.
курсовая работа [1,5 M], добавлен 31.03.2015Особенности разработки инфологической модели и создание структуры реляционной базы данных. Основы проектирования базы данных. Разработка таблиц, форм, запросов для вывода информации о соответствующей модели. Работа с базами данных и их объектами.
курсовая работа [981,4 K], добавлен 05.11.2011Описание предметной области, определение функциональных требований к системе и построение диаграммы потока данных. Построение модели "сущность-связь", описание сущностей и атрибутов модели. Построение реляционной базы данных и описание ее таблицы.
курсовая работа [624,5 K], добавлен 30.05.2019Требования, предъявляемые к базе данных "Публикации в СМИ". Выбор инструментальных средств для разработки. Проектирование базы данных: выявление необходимого набора сущностей, обоснование требуемого набора атрибутов, определение связей между объектами.
курсовая работа [1,2 M], добавлен 18.04.2014Характеристика понятия базы данных, структурированных и взаимосвязанных методов, обеспечивающих добавление, выборку и отображение данных. Изучение предметной области, даталогического проектирования, требований к техническому и аппаратному обеспечению.
курсовая работа [1,6 M], добавлен 10.01.2012Процессы обработки информации. Эффективность автоматизированной информационной системы. Система управления базой данных. Локальная и распределенная система банков и баз данных. Этапы проектирования базы данных. Различие уровней представления данных.
контрольная работа [75,7 K], добавлен 07.07.2015