База-данных интернет-магазина

Автор: Пользователь скрыл имя, 12 Сентября 2011 в 08:37, курсовая работа

Описание работы

Задача: спроектировать базу данных интернет-магазина. Для этого в первую очередь необходимо описать предметную область: Магазин осуществляет продажу различных категорий товаров. Без ограничения покупателей по возрасту. Оплату можно производить при помощи кредитной карты, интернет-кошельков, наличными при доставке или при получении товара в одной из точек выдачи, расположенных в Москве.

Содержание

1. Описание предметной области. Постановка задачи

2. Выбор средств проектирования и СУБД.

3. Построение инфологической (концептуальной) модели предметной области

4. Проектирование логической структуры базы данных

5. Выявление полного перечня ограничений целостности, присущего данной предметной области

6. Проектирование физической структуры базы данных

7. Организация ввода данных в БД

8. Организация корректировки БД

9. Описание информационных потребностей пользователей и выбор способов их реализации

10. Разработка интерфейса

11. Реализация проекта в среде конкретной СУБД

12. Список использованной литературы

Работа содержит 1 файл

база данных.docx

— 879.38 Кб (Скачать)

  При проектировании нашей базы данных ввод информации осуществлялся при помощи форм. Экранные формы создаются либо в режиме конструктора, либо автоматически  по выбранным полям таблицы или  запроса. Корректировка данных возможна в этих же формах.Учитывая, что наш  проект предполагает осуществление  поступления данных в базу через  сайт Интернет-магазина – для удобства работы с нашей базой данных мы реализовали специальные формы, частично эмулирующие его работу. Эти формы имеют следующий  вид:

  Экранная  форма «Оформление заказа»

    
 
 
 
 
 

  Экранная  форма «Регистрация»

    
 
 
 
 
 
 
 
 

  Экранная  форма «Сайт»

    
 
 
 
 
 
 
 
 

  Организация корректировки БД

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

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

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

  Запрос  на получение товарного чека

  SELECT Товар.id_товара AS ID, Товар.Название_товара AS Наименование, Count([Заказ Товар].id_товара) AS Количество, Sum(Товар.Цена_товара) AS Цена, [Заказ Товар].[№_заказа] AS [Товарный  чек №]

  FROM Товар INNER JOIN [Заказ Товар] ON Товар.id_товара = [Заказ Товар].id_товара

  GROUP BY Товар.id_товара, Товар.Название_товара, [Заказ Товар].[№_заказа]

  HAVING [Заказ Товар].[№_заказа]=[Введите  № заказа];

  Запрос  на получение гарантийного талона

  SELECT Товар.id_товара, Товар.Название_товара, Count([Заказ Товар].id_товара), Товар.Гарантия_мес, [Заказ Товар].[№_заказа]

  FROM Товар INNER JOIN [Заказ Товар] ON Товар.id_товара = [Заказ Товар].id_товара

  GROUP BY Товар.id_товара, Товар.Название_товара, Товар.Гарантия_мес, [Заказ Товар].[№_заказа]

  HAVING [Заказ Товар].[№_заказа]=[Введите  номер заказа];

  Запрос  на получение информации о самой  покупаемой продукции

  SELECT TOP 5 Товар.Название_товара, Count([Заказ  Товар].id_товара)

  FROM Товар INNER JOIN [Заказ Товар] ON Товар.id_товара = [Заказ Товар].id_товара

  GROUP BY Товар.Название_товара

  ORDER BY Count([Заказ Товар].id_товара) DESC;

  Запрос  на получение информации о самой  рейтинговой продукции

  SELECT Товар.Название_товара, Avg([Товар/Оценка].Оценка) AS [Средняя оценка]

  FROM Товар INNER JOIN [Товар/Оценка] ON Товар.id_товара = [Товар/Оценка].id_товара

  GROUP BY Товар.Название_товара

  ORDER BY Avg([Товар/Оценка].Оценка) DESC;

  Запрос  на получение сводки доходности предприятия  по различным категориям продукции

  SELECT DISTINCT Товар.Категория_товара, Sum(Товар.Цена_товара)

  FROM Товар INNER JOIN (Заказ INNER JOIN [Заказ  Товар] ON Заказ.[№_заказа] = [Заказ Товар].[№_заказа]) ON Товар.id_товара = [Заказ Товар].id_товара

  GROUP BY Товар.Категория_товара, Заказ.Статус_заказа

  HAVING Заказ.Статус_заказа="выполнен";

  Запрос  на вывод новинок

  SELECT TOP 5 Товар.Название_товара, Avg([Товар/Оценка].Оценка) AS [Средняя оценка], Товар.Цена_товара

  FROM Товар LEFT JOIN [Товар/Оценка] ON Товар.id_товара = [Товар/Оценка].id_товара

  GROUP BY Товар.Название_товара, Товар.Цена_товара, Товар.id_товара

  ORDER BY Товар.id_товара DESC;

  Запрос  на выдачу информации о распределении  проданного товара в зависимости  от пола клиентов

  SELECT Товар.Категория_товара, Покупатель.Пол, Count(Покупатель.Пол) AS Количество

  FROM Товар INNER JOIN (Покупатель INNER JOIN (Заказ  INNER JOIN [Заказ Товар] ON Заказ.[№_заказа] = [Заказ Товар].[№_заказа]) ON Покупатель.Логин  = Заказ.Логин) ON Товар.id_товара = [Заказ  Товар].id_товара

  GROUP BY Товар.Категория_товара, Покупатель.Пол;

  Запрос  на историю заказов

  SELECT Заказ.[№_заказа], Заказ.Дата_заказа, Заказ.Стоимость_заказа, Заказ.Логин

  FROM Товар INNER JOIN (Заказ INNER JOIN [Заказ  Товар] ON Заказ.[№_заказа] = [Заказ Товар].[№_заказа]) ON Товар.id_товара = [Заказ Товар].id_товара

  GROUP BY Заказ.[№_заказа], Заказ.Дата_заказа, Заказ.Стоимость_заказа, Заказ.Логин

  HAVING Заказ.Логин=[Введите логин];

  Запрос  на историю покупок

  SELECT Заказ.Логин, Товар.Название_товара, Товар.Цена_товара, [Заказ Товар].[№_заказа]

  FROM Товар INNER JOIN (Заказ INNER JOIN [Заказ  Товар] ON Заказ.[№_заказа] = [Заказ Товар].[№_заказа]) ON Товар.id_товара = [Заказ Товар].id_товара

  GROUP BY Заказ.Логин, Товар.Название_товара, Товар.Цена_товара, [Заказ Товар].[№_заказа]

  HAVING Заказ.Логин=[Введите логин] AND [Заказ  Товар].[№_заказа]=[Введите № заказа];

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

  Товарный  чек

    

  Гарантийный талон

  

  Отчет о новинках интернет-магазина

    

  Отчет по самым рейтинговым товарам  магазина

    

  Отчет по самым популярным товарам магазина

    

  История заказов

    

  История покупок

    
 
 
 
 
 
 

  Разработка  интерфейса

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

  -Сайт

  -Администрирование БД

  -Отчеты

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

  Реализация  проекта в среде конкретной СУБД

  Реализация  проекта разработки базы данных интернет-магазина в среде СУБД MS Access является многступенчатым  трудоемким процессом, основые этапы  которого были подробно рассмотрены  выше. На основе ER-модели, созданной  в выбранном нами CASE-средства (CA ERwin Data Modeler), была осуществлена автоматическая генерация файлов данных в выбранной  нами среде. В процессе создания базы данных было построено 13 взаимосвязанных  таблиц. Был также реализован контроль целостности для каждого из ограничений, выявленных нами ранее. С помощью SQL были построены все необходимые  для удовлетворения информационных потребностей пользователей БД запросы. Следующим важнейшим этапом реализции проекта была разработка пользовательского интерфейса. Были созданы все необходимые для обеспечения полноценной навигации по базе данных элементы, включая главное меню и различные подменю. Все экранные формы создавались нами в режиме конструктора и также редактировались средствами Visual Basic в режиме просмотра кода. Заключительным этапом реализации проекта стало создание отчетов при помощи мастера создания отчетов и впоследствии редактировались в режимах макета и конструктора. В отчетах были отображены результаты выполнения созданных ранее запросов. 
 
 
 
 
 

  Список  использованной литературы

  1. Диго С.М. Базы данных: проектирование и использование: Учебник. – М.: Финансы и статистика, 2005.
  2. Диго С. М. Создание баз данных в среде СУБД Access: Учебное пособие. – М., 2001.
  3. Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. Базы данных. Учебник для вузов. – М.: Корона-принт, 2004.
  4. Кузин А.В., Левонисова С.В. Базы данных: Учебник. – М.: Academia, 2010.
  5. Туманов В.Е. Основы проектирования реляционных баз данных: Учебное пособие. – М.: Интернет-университет информационных технологий, 2010.
  6. Илюшечкин В. М. Основы использования и проектирования баз данных: Учебное пособие. – М.: Юрайт, 2010.
  7. Преснякова Г.В. Проектирование интегрированных реляционных баз данных: Учебник. – М.: КДУ, 2007.
  8. Джон Дей, Крейг Ван Слайк, Рэймонд Фрост Базы данных. Проектирование и разработка: Учебник. – М.: НТ Пресс, 2007.
  9. Домбровская Г.Р., Новиков Б.А. Настройка приложений баз данных: Учебник – М.: BHV, 2006.
  10. http://www.sql.ru/ – портал про язык SQL и клиент/серверные технологии.
  11. http://sql.itsoft.ru/ – интернет-справочник с примерами по языку SQL.
  12. http://www.cyberguru.ru/database/database-theory/ – статьи по теории баз данных.
  13. http://www.seopro.ru/theory/2009/10/887.html - рекомендации по созданию интернет-магазинов.
  14. http://iomarket.com.ua/sozdanie-internet-magazina-s-nulya-shag-za-shagom/ - статья о создании интернет-магазина с нуля.
  15. http://www.i2r.ru/static/255/out_23600.shtml - статья о разработке эффективной структуры интернет-магазина.
  16. http://www.shop2you.ru/articles/internet_shop.shtml - статья об устройстве интернет-магазина.

Информация о работе База-данных интернет-магазина