Автор работы: Пользователь скрыл имя, 21 Декабря 2011 в 18:56, курсовая работа
При поиске нужного объекта (суммы, документа, количества) автоматизация позволит сделать выборку по данной позиции и значительно сократит объем подходящих документов или сведет к одному единственному искомому документу.
Возникают сложности и с составлением прайс-листа. Если в каталог внесли новый вид товаров или если изменилась цена на старые товары, необходимо будет заново переделывать весь прайс-лист. Внедрение автоматизированной системы позволит автоматически делать все эти действия при добавлении новой позиции номенклатуры.
Введение…………………………………………………………………….4
Постановка задачи на разработку базы данных………………………5
1.1Анализ предметной области……………………………………………5
1.2 Требования к информационной системе……………………………..6
2 Проектирование модели данных………………………………………..7
2.1 Семантическая модель данных………………………………………..7
2.2 Логическая модель данных……………………………………………8
2.3 Определение физических характеристик атрибутов………………..9
3 Реализация системы…………………………………………………….10
3.1 Создание, связывание и заполнение таблиц………………………...10
3.2 Реализация запросов к базе дынных…………………………………15
3.3 Создание отчетов……………………………………………………...32
3.4 Создание форм………………………………………………………...33
Заключение………………………………………………………………..36
Список использованных источников…
Каждый клиент может сделать один или более заказов. Введем сущность «Заказы». Каждому заказу соответствует уникальный номер, кроме того сущность содержит атрибуты: «датаЗаказа» и «стоимостьЗаказа». Между сущностями «Клиенты» и «Заказы» устанавливаем связь (1:М), которая является обязательной со стороны сущности «Заказы» и необязательной со стороны сущности «Клиенты». Заказ обязательно должен быть сделан каким-либо клиентом, поэтому у этой сущности связь обязательная. Но необязательно каждому клиенту иметь заказ на данный момент, т.к. чтобы быть клиентом фирмы, достаточно одного заказа в год.
Из анализа предметной области видно, что клиент за один раз может заказать несколько различных товаров и в нескольких экземплярах. Возникает необходимость связать сущности «Заказы» и «Товары» связью (М:N). Т.к. отдельные товары могут не быть заказаны в данный момент, со стороны сущности «Товары» связь необязательная. Однако если заказ сделан, то он в любом случае содержит хотя бы один товар, что означает обязательную связь со стороны сущности «Заказы». Связь будет включать в себя атрибуты связи: «количествоТовара» и «стоимость».
Семантическая
модель предметной области «Орифлейм»
представлена приложении А.
Основные сущности и связи определены . Следующий этап разработки модели- это формирование отношений между определенными сущностями.
В данной базе данных между сущностями «ВидТовара» и «Товары» существует связь (1:М), обязательная с двух сторон, что означает два отношения в результате. Сущность «ВидТовара» является родительской, т.к. с ее стороны кратность связи 1. Значит эта сущность передает копию своего первичного ключа «КодВида» в сущность «Товары», которая использует его в качестве внешнего ключа.
Каждый клиент может сделать один или более заказов. Между сущностями «Клиенты» и «Заказы» формируются два отношения «Клиенты» и «Заказы». Связь между ними в семантической модели имеет кратность (1:М), причем 1 со стороны сущности «Клиенты». Это определяет сущность «Клиенты» как родительскую, которая передает копию своего первичного ключа «номерКлиента» в качестве внешнего в сущность «Заказы».
В семантической модели есть связь сущностей «Заказы» и «Товары» кратностью (М:N), которая имеет атрибуты: «КоличествоТовара» и «Стоимость». Для такой связи необходимо создать новое отношение «Накладная» и включить в него все атрибуты, которые входят в состав этой связи. Формируются три отношения: «Заказы», «Накладная», «Товары». Обе связи кратностью (1:М). Родительскими являются сущности «Заказы» и «Товары». Копии первичных ключей сущностей, участвующих в связи, передаются в новое отношение для использования в качестве внешних ключей. Таким образом первичные ключи «НомерТовара» и «НомерЗаказа» образуют также первичный ключ нового отношения и одновременно являются его внешними ключами.
Теперь необходимо проверить базу данных на соответствие нормальным формам.
Отношения в модели находятся в первой нормальной форме, т.к. на пересечении каждого столбца и каждой строки находятся только элементарные значения атрибутов.
На
соответствие второй нормальной форме
проверяются только отношения, имеющие
составной первичный ключ. В данной
модели отношение «Накладная»
Все отношения данной модели находится в третьей нормальной форме, т.к. оно находится во второй нормальной форме и не содержит транзитивных зависимостей, то есть зависимостей неключевых атрибутов от неключевых.
Данная база данных не содержит отношений с многозначными атрибутами, поэтому не проверяется на соответствие 4НФ.
Логическая
модель представлена в Приложении Б.
2.3 Определение
физических характеристик
атрибутов
Таблица 2.1-Физические характеристики атрибутов
Имя атрибута | Тип | Размер | Обязательность
заполнения |
Таблица ВидТовара | |||
КодВида | Числовой | Длинное целое | Да |
Вид | Текстовый | 50 символов | Да |
Таблица Клиенты | |||
НомерКлиента | Числовой | Длинное целое | Да |
ФИО | Текстовый | 50 символов | Да |
Телефон | Числовой | Длинное целое | Нет |
Таблица Заказы | |||
НомерЗаказа | Числовой | Длинное целое | Да |
НомерКлиента | Числовой | Длинное целое | Да |
ДатаЗаказа | Дата/Время | Краткий формат даты | Да |
СтоимостьЗаказа | Числовой | Да | |
Таблица Накладная | |||
НомерЗаказа | Числовой | Длинное целое | Да |
НомерТовара | Числовой | Длинное целое | Да |
КоличествоТовара | Числовой | Длинное целое | Да |
Стоимость | Денежный | Да | |
Таблица Товары | |||
НомерТовара | Числовой | Длинное целое | Да |
КодВида | Числовой | Длинное целое | Да |
Название | Текстовый | 50 символов | Да |
Цвет | Текстовый | 50 символов | Да |
Консистенция | Текстовый | 50 символов | Да |
Объем | Числовой | Длинное целое | Да |
Цена | Денежный | Да |
3
Реализация системы
3.1
Создание, связывание
и заполнение таблиц
Создадим базу данных для ввода, хранения данных о заказах товаров, клиентах, которые заказывают эти товары, видах товаров.
Новую таблицу для ввода данных можно создать тремя способами:
1) с помощью мастера таблиц;
2) в режиме таблицы (путем ввода данных);
3) в режиме конструктора.
Создадим таблицы базы данных в режиме конструктора. Создадим новую таблицу и сохраним ее в базе данных под именем «ВидТовара».
Для создания таблицы в режиме конструктора нажмем кнопку «Таблицы» на панели «Объекты окна базы данных», а затем кнопку «Создание таблицы в режиме конструктора». Появится окно конструктора.
Окно конструктора таблицы заполним атрибутами таблицы «Вид Товара».
В таблице, расположенной в верхней части окна, вводим имена атрибутов (полей) и типы данных. В ячейке «Тип данных» из выпадающего списка выбираем нужный тип.
После того как указано имя поля и выбран тип данных, можно выполнить дополнительную настройку свойств каждого поля. Это делается в нижней части окна, которая называется «Свойства поля». Некоторые свойства полей имеют фиксированный набор значений. При попадании в соответствующую ячейку в ней автоматически появляется кнопка со стрелкой, при нажатии на которую можно выбрать нужное значение свойства из выпадающего списка аналогично тому, как это делалось при выборе типа данных. Набор свойств полей, который можно увидеть на вкладке «Общие», отличается для полей различных типов.
В свойствах поля в разделе Общее укажем, что поле обязательное. Тоже сделаем для всех полей.
Теперь
нужно установить первичный ключ.
Для этого выделяем поле (щелчок
мыши по строке поля), которое будет
ключевым, в данном случае это поле
«Код вида», нажмем пункт меню «Правка/Ключевое
поле» или кнопку
на панели инструментов. Пример структуры
таблицы в режиме конструктора приведен
на рисунке 1.
Рисунок
1 – Структура
таблицы «ВидТовара»
в режиме конструктора
Завершим работу с таблицей, предварительно сохранив ее под именем «ВидТовара».
Аналогично
строятся и остальные таблицы: «Клиенты»,
«Заказы», «Накладная» и «Товары». Их структура
в режиме конструктора представлена на
рисунках 2,3,4 и 5.
Рисунок
2 – Структура
таблицы «Клиенты»
в режиме конструктора
Рисунок
3 – Структура
таблицы «Заказы»
в режиме конструктора
Рисунок
4 – Структура
таблицы «Накладная»
в режиме конструктора
Рисунок
5 – Структура
таблицы «Товары»
в режиме конструктора
Теперь
определим связи между
Теперь
установим связи между
1.
Закроем все открытые таблицы.
Создавать или изменять связи
между открытыми таблицами
2.
Переключимся в окно базы
3. Нажмем кнопку на панели инструментов «Работа с базами данных/Схема данных».
4.
Если в базе данных не
5. Дважды щелкнем левой кнопкой мыши по именам таблиц или нажмем кнопку «Добавить», выделив мышью имена таблиц, для которых требуется определить связи. Затем закроем диалоговое окно Добавление таблицы, нажав кнопку «Закрыть».
6.
Для связывания полей
При этом в разделе «Тип отношения» автоматически устанавливается тип связи - Один-ко-многим.
Определим
параметры связи, установив флажки
«Обеспечение целостности данных»
и «Каскадное обновление связанных
полей». Нажмем кнопку «Создать».
Аналогично производится связывание остальных
таблиц базы.В результате получим схему
данных, представленную на рисунке 6.
Рисунок
6 – Схема данных
Теперь
мы можем вводить данные в таблицы,
при этом сначала заполняем главные
таблицы, затем для каждой записи
главной таблицы создаем
Рисунок
7 – Таблица «ВидТовара»
Рисунок
8 – Таблица «Клиенты»
Рисунок
9 – Таблица «Заказы»
Рисунок
10 – Таблица «Товары»
Рисунок
11 – Таблица «Накладная»
3.2
Реализация запросов
к базе данных
Создадим в режиме конструктора запрос для отбора информации о товарах, на которые поступали заказы за указанное пользователем количество последних месяцев.
Информация о работе Разработка базы данных для автоматизации учета продаж продукции фирмы Орифлейм