Разработка интернет-магазина и его продвижение в сети Интернет

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

анных (СУБД).

Плюсы:

поддержка нескольких одновременных запросов

оптимизация связей с присоединением многих данных за один проход

записи фиксированной и переменной длины

гибкая система привилегий и паролей

до 16 ключей в таблице. Каждый ключ может иметь до 15 полей

поддержка чисел длиной от 1 до 4 байт (ints, float, double, fixed), строк переменной длины и меток времени

интерфейс с множеством языков

основанная на потоках, быстрая система памяти

все операции работы со строками не обращают внимания на регистр символов в обрабатываемых строках

псевдонимы применимы как к таблицам, так и к отдельным колонкам в таблице

все поля имеют значение по умолчанию. INSERT можно использовать на любом подмножестве полей

легкость управления таблицей, включая добавление и удаление ключей и полей

 

4.3 Проектирование модели БД

 

Проектирование РБД включает следующие этапы:

.Инфологическое проектирование - сбор, анализ и редактирование требований к данным в предметной области. Для этого проводят информационное обследование предметной области, изучение ее информационной структуры, выявление всех фрагментов, каждый из которых характеризуется пользовательским представлением, информационными объектами и связями между ними, процессами над информационными объектами, моделирование и интеграция всех представлений. Результатом данного этапа является инфологическая модель БД.

Предметная область: книжный магазин

Сущности:

Продавец (id_pr, ФИО, Ник, email, Пароль)

Покупатель (id_pok, ФИО, Ник, email)

Категории покупателей (cat_id, Имя_Категории)

Категория товара (id_cat_tov, Название_Категории)

Заказы (id_zak, Номер_Заказа)

Товар (id_tov, Описание, Цена)

В результате получим логическую модель:

 

Рис.4.3.1 Логическая модель БД

 

.Логическое проектирование - преобразование инфологической модели БД в структуры данных. Результатом этого этапа является логическая модель БД.

Определим первичные и внешние ключи отношений:

Продавец:

Первичный - id_pr

Покупатель:

Первичный - id_pok

Категории покупателей:

Первичный - cat_id

Вторичный - id_pok

Категория товара:

Первичный - id_cat_tov

Вторичный - id_tov

Заказы:

Первичный - id_zak

Вторичный - id_pok, id_pr, id_tov

Товар:

Первичный - id_tov

Определим функциональные зависимости для каждого отношения:

Продавец_pr ФИО_pr Ник_pr email_pr Пароль

Покупатель

id_pok ФИО_pok Ник

id_pok email

Категории покупателей

cat_id Имя_Категории

Категория товара

id_cat_tov Название_Категории

Заказы

id_zak Номер_Заказа

Товар

id_tov Описание_tov Цена

Нормальная Форма (3НФ):

значение атрибутов в каждом кортеже атомарно

все кортежи таблицы уникальны

имена атрибутов уникальны

ключ

неключевой атрибут функционально полно зависит от ключа целиком

отсутствуют транзитивные зависимости между ключевым и неключевым атрибутом

Для каждого из отношений выполняются эти условия.

Так как для каждого из отношений выполняются условия нахождения в 3НФ, то вся БД находится в 3НФ.

.Физическое проектирование - определение особенностей хранения данных, методов доступа и т.д.

 

4.4 Создание БД

 

Так как приложение создается с помощью CMS Joomla, то все таблицы в Базе Данных создаются автоматически.

Ниже приведены примеры таблиц из логической модели, созданных CMS.

 

4.4.1 Продавец, Покупатель

В Базе Данных нет конкретного разделения на Продавцов и Покупателей, они находятся в одной таблице:

 

Рис.4.4.1.1 Таблица пользователей

 

Существуют группы для управления сайтом (администратор, редактор, автор и т.д.), а также группы пользователей в магазине, которые определяют скидку для покупателя (администратор (продавец) также может совершать покупки):

 

Рис.4.4.1.2 Таблица групп пользователей

 

У каждой группы своя скидка на заказ в магазине.

 

4.4.2 Товары

Для товаров также создается несколько таблиц. Основная таблица:

 

Рис.4.4.2.1 Таблица товаров

 

Цена товара записана в отдельную таблицу:

 

Рис.3.2.2 Таблица цен на товары

 

.4.3 Заказ

Для каждого заказа создается запись в таблице с заказами:

 

Рис.4.4.3.1 Таблица заказов

 

Так же есть архив заказов:

 

Рис.4.4.3.2 Таблица истории заказов

 

И таблица, в которой можно посмотреть содержание заказа:

 

Рис.4.4.3.3 Таблица содержания заказа

 

Также в Базе Данных есть таблицы с описание вариантов доставки и их стоимости:

 

Рис.4.4.3.4 Таблица способов доставки

 

Рис.4.4.3.5 Таблица стоимости доставки

 

Для оплаты заказа есть несколько стандартных способов:

 

Рис.4.4.3.6 Таблица способов оплаты

 

Но в моей работе используются только три из них:

 

Рис.4.4.3.7 SQL-запрос на выборку

Рис.4.4.3.8 Таблица используемых в приложении способов оплаты

 

Вывод по главе: Рассмотрено понятие реляционной СУБД. Описаны основные возможности MySql. Разобраны этапы проектирования реляционной Базы Данных, по каждому этапу проведена работа. Была создана БД и представлены основные таблицы.

Глава 5. ?/p>