скачать рефераты
  RSS    

Меню

Быстрый поиск

скачать рефераты

скачать рефератыКурсовая работа: Проектирование базы данных интернет-магазина в СУБД MS ACCESS

Аналогичным образом ограничение на данное поле контролируется в таблицах «Сотрудник» и «Поставщик»

2. Текстовое поле «ФИО» в таблице «Покупатель» не может содержать цифр

Аналогичным образом ограничение на данное поле контролируется в таблице «Сотрудник»

3. Значения поля «Дата_рождения» в таблице «Покупатель» не может превышать текущую дату и должно быть определенного вида, что контролируется маской ввода

4. Поле «Дата_регистрации» в таблице «Покупатель», как правило, содержит дату добавления записи в таблицу, не должно превышать текущую дату и должно быть определенного вида, который контролируется маской ввода

5. Поле «Пол» в таблице «Покупатель» содержит фиксированный набор значений, контролируемых списком подстановки

6. Поле «Образование» в таблице «Покупатель» содержит фиксированный набор значений, контролируемый списком подстановки

7. Поле «Логин» в таблице «Покупатель/телефон» содержит фиксированный набор значений, источником которых является таблица «покупатель»

Аналогичным образом ограничение на данное поле контролируется в таблицах «заказ», «кредитная карта» и «товар/оценка»

8. Поле «Телефон» в таблице «Покупатель/телефон» может содержать только цифры и должно быть определенного вида, который контролируется маской ввода

Аналогичным образом ограничение на данное поле контролируется в таблицах «поставщик», «сотрудник» и «точка выдачи». Ограничение подобного рода установлено и на поле «факс» в таблицах «сотрудник» и «точка выдачи»

9. Поле «id_товара» в таблице «Товар/оценка» содержит фиксированный набор значений, источником которых является таблица «товар»

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

10. Поле «Оценка» в таблице «Товар/оценка» содержит фиксированный набор значений и позволяет оценить клиенту выбранный товар в диапазоне от 1 до 10

11. Текстовое поле «Время_работы» в таблице «Точка выдачи» может содержать только цифры и должно быть определенного диапазонного вида, который контролируется маской ввода

12.Поле «Название_точки» в таблице «Точка выдачи/телефон» содержит фиксированный набор значений, источником которых является таблица «Точка выдачи»

Аналогичным образом ограничение на данное поле контролируется в таблице «заказ»

13. Поле «Должность» в таблице «Сотрудник» содержит фиксированный набор значений, контролируемый списком подстановки

14. Поле «Номер_кред_карты» в таблице «Кредитная карта» должно содержать только цифры и быть определенного вида, который контролируется маской ввода

15. Поле «Имя_владельца» в таблице «Кредитная карта» должно содержать только латинские буквы

16. Поле «Проверочный_код» в таблице «Кредитная карта» должно быть определенного вида, который контролируется маской ввода

17. Поле «Срок_истечения» в таблице «Кредитная карта» должно быть определенного вида, который контролируется маской ввода. При этом для использования кредитной карты срок её истечения должен превышать текущую дату или быть равным ей

18. Поле «№_заказа» в таблице «Заказ» содержит фиксированный набор значений, источником которых является таблица «Заказ товар»

Аналогичным образом ограничение на данное поле контролируется в таблице «доставка»

19. Поле «Дата_заказа» в таблице «Заказ» должно быть определенного вида, который контролируется маской ввода. По умолчанию выставляется дата добавления заказа и также контролируется невозможность ввода даты, превышающей текущую

20. Поле «Время_заказа» в таблице «Заказ» должно быть определенного вида, который контролируется маской ввода. По умолчанию выставляется время добавления заказа.

21. Поле «Статус_заказа» в таблице «Заказ» содержит фиксированный набор значений, контролируемый списком подстановки

22. Поле «Способ_оплаты» в таблице «Заказ» содержит фиксированный набор значений, контролируемый списком подстановки

23. Поле «Способ_получения» в таблице «Заказ» содержит фиксированный набор значений, контролируемый списком подстановки

24. Поле «Табельный_номер» в таблице «Заказ» содержит фиксированный набор значений, источником которых является таблица «Сотрудник»

Аналогичным образом ограничение на данное поле контролируется в таблице «доставка»

25. Поле «Удаленность_МКАД» в таблице «Доставка» содержит ограничение на дальность расстояния осуществляемой доставки. Доставка ограничена радиусом 60-ти км. От МКАД

26. Поле «Статус_доставки» в таблице «Доставка» содержит фиксированный набор значений, контролируемый списком подстановки

27. Поле «Вид_доставки» в таблице «Доставка» содержит фиксированный набор значений, контролируемый списком подстановки

Ограничения, контролируемые на формах посредством Visual Basic:

1. Для организации ограничений на доступ определенных сотрудников к различным таблицам через формы на них предусмотрен ввод пароля (1111)

Private Sub Кнопка8_Click()

On Error GoTo Err_Кнопка8_Click

Dim stDocName As String

Dim stLinkCriteria, pas As String

pas = InputBox("Введите пароль", "Пароль")

If pas = "1111" Then

stDocName = ChrW(1055) & ChrW(1086) & ChrW(1089) & ChrW(1090) & ChrW(1072) & ChrW(1074) & ChrW(1097) & ChrW(1080) & ChrW(1082) & ChrW(47) & ChrW(1082) & ChrW(1072) & ChrW(1090) & ChrW(1077) & ChrW(1075) & ChrW(1086) & ChrW(1088) & ChrW(1080) & ChrW(1103)

DoCmd.OpenForm stDocName, , , stLinkCriteria

Else

MsgBox ("Пароль неверный")

End If

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

Private Sub №_заказа_Click()

Суммарный_вес_заказа.Requery

Суммарный_вес_заказа = Суммарный_вес_заказа.ItemData(0)

Суммарный_объем_заказа.Requery

Суммарный_объем_заказа = Суммарный_объем_заказа.ItemData(0)

Стоимость_заказа.Requery

Стоимость_заказа = Стоимость_заказа.ItemData(0)

If Удаленность_МКАД_км.Value = 0 Then Вид_доставки.Value = "Курьер"

If (Стоимость_заказа.Value > 30000) Or (Суммарный_вес_заказа.Value >= 2.5) Or (Суммарный_объем_заказа.Value > 4000) Then Вид_доставки.Value = "Легковой транспорт"

If (Суммарный_вес_заказа.Value >= 23) Or (Суммарный_объем_заказа.Value > 25000) Then Вид_доставки.Value = "Грузовой транспорт"

If Вид_доставки.Value = "Курьер" Then Стоимость_доставки.Value = 250

If Вид_доставки.Value = "Легковой транспорт" Then Стоимость_доставки.Value = 350 + Удаленность_МКАД_км.Value * 15

If Вид_доставки.Value = "Грузовой транспорт" Then Стоимость_доставки.Value = 450 + Удаленность_МКАД_км.Value * 20

3. При редактировании поля «Удаленность_от_МКАД_км» на форме «Доставка» осуществляется пересчет стоимости доставки в зависимости от его значения

Private Sub Удаленность_МКАД_км_LostFocus()

If Вид_доставки.Value = "Курьер" Then Стоимость_доставки.Value = 250

If Вид_доставки.Value = "Легковой транспорт" Then Стоимость_доставки.Value = 350 + Удаленность_МКАД_км.Value * 15

If Вид_доставки.Value = "Грузовой транспорт" Then Стоимость_доставки.Value = 450 + Удаленность_МКАД_км.Value * 20

End Sub

4. При обращении к форме «заказ» на основании номера заказа автоматически пересчитывается стоимость заказа

Private Sub №_заказа_Click()

Стоимость_заказа.Requery

End Sub

5. При обращении к форме «заказ» при определении способа получения заказа контролируется возможность ввода точки доставки в зависимости от его выбора

Private Sub Способ_получения_Click()

If Способ_получения.Value = "Доставка" Then

Название_точки.Value = " "

Название_точки.Visible = False

End If

If Способ_получения.Value = "Самовывоз" Then

Название_точки.Visible = True

End If

6. При обращении к форме «Корзина заказов», эмулирующей подобный функционал сайта автоматически определяется следующий номер заказа

Private Sub Form_Current()

Me![Список12].SetFocus

Список12.ListIndex = 0

Поле14.Value = Список12.Value + 1

End Sub

7. При обращении к форме «Корзина заказов», эмулирующей подобный функционал сайта контролируется возможность осуществления оформления заказа только при условии добавления в корзину хотя бы одной единицы товара, а также невозможность выбора подкатегории, не принадлежащей выбранной категории

Private Sub ПолеСоСписком2_Click()

ПолеСоСписком4.Value = ""

ПолеСоСписком6.Value = ""

If ПолеСоСписком2.Value <> "" And ПолеСоСписком4.Value <> "" And ПолеСоСписком6.Value <> "" Then

Кнопка18.Visible = True

Else

Кнопка18.Visible = False

End If

End Sub

Private Sub ПолеСоСписком4_Click()

ПолеСоСписком6.Value = ""

If ПолеСоСписком2.Value <> "" And ПолеСоСписком4.Value <> "" And ПолеСоСписком6.Value <> "" Then

Кнопка18.Visible = True

Else

Кнопка18.Visible = False

End If

End Sub

Private Sub ПолеСоСписком4_GotFocus()

Me.Refresh

End Sub

Private Sub ПолеСоСписком6_Click()

If ПолеСоСписком2.Value <> "" And ПолеСоСписком4.Value <> "" And ПолеСоСписком6.Value <> "" Then

Кнопка18.Visible = True

Else

Кнопка18.Visible = False

End If

End Sub

Private Sub ПолеСоСписком6_GotFocus()

Me.Refresh

End Sub

Аналогичным образом происходит проверка на категории и подкатегории при обращении к форме «Оценка», эмулирующей подобный функционал сайта

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

Список69.Requery

Me![Список69].SetFocus

Список69.ListIndex = 0

№_заказа.Value = Список69.Value

Суммарный_вес_заказа.Requery

Me![Суммарный_вес_заказа].SetFocus

Суммарный_вес_заказа.ListIndex = 0

Суммарный_объем_заказа.Requery

Me![Суммарный_объем_заказа].SetFocus

Суммарный_объем_заказа.ListIndex = 0

Стоимость_заказа.Requery

Me![Стоимость_заказа].SetFocus

Стоимость_заказа.ListIndex = 0

If Удаленность_МКАД_км.Value = 0 Then Вид_доставки.Value = "Курьер"

If (Стоимость_заказа.Value > 30000) Or (Суммарный_вес_заказа.Value >= 2.5) Or (Суммарный_объем_заказа.Value > 4000) Then Вид_доставки.Value = "Легковой транспорт"

If (Суммарный_вес_заказа.Value >= 23) Or (Суммарный_объем_заказа.Value > 25000) Then Вид_доставки.Value = "Грузовой транспорт"

If Вид_доставки.Value = "Курьер" Then Стоимость_доставки.Value = 250

If Вид_доставки.Value = "Легковой транспорт" Then Стоимость_доставки.Value = 350 + Удаленность_МКАД_км.Value * 15

If Вид_доставки.Value = "Грузовой транспорт" Then Стоимость_доставки.Value = 450 + Удаленность_МКАД_км.Value * 20

9. При обращении к форме «Оформление заказа», эмулирующей подобный функционал сайта при редактировании поля «Удаленность_от_МКАД_км» на форме «Доставка» осуществляется пересчет стоимости доставки в зависимости от его значения

Private Sub Удаленность_МКАД_км_LostFocus()

If Вид_доставки.Value = "Курьер" Then Стоимость_доставки.Value = 250

If Вид_доставки.Value = "Легковой транспорт" Then Стоимость_доставки.Value = 350 + Удаленность_МКАД_км.Value * 15

If Вид_доставки.Value = "Грузовой транспорт" Then Стоимость_доставки.Value = 450 + Удаленность_МКАД_км.Value * 20

End Sub

10. При обращении к форме «Оформление заказа», эмулирующей подобный функционал сайта при редактировании поля «Логин» проверяется условие на его существование в БД для возможности оформления заказа

Dim i As Long, f As Boolean

Список144.Requery

Me![Список144].SetFocus

Список144.ListIndex = 0

f = False

For i = 0 To Список144.ListCount - 1

Список144.ListIndex = i

If Список144.Value = Логин.Value Then f = True

Next i

If f = False Then MsgBox ("Сначала зарегистрирутесь")

End Sub

Аналогичным образом происходит проверка при обращении к форме «Оценка товара клиентом», эмулирующей подобный функционал сайта

11. При обращении к форме «Регистрация», эмулирующей подобный функционал сайта при регистрации нового пользователя проверяются условия на обязательность заполнения определенных полей

Private Sub Кнопка70_Click()

On Error GoTo Err_Кнопка70_Click

 Dim stDocName As String

 stDocName = ChrW(1044) & ChrW(1086) & ChrW(1073) & ChrW(1072) & ChrW(1074) & ChrW(1080) & ChrW(1090) & ChrW(1100) & ChrW(32) & ChrW(1088) & ChrW(1077) & ChrW(1075) & ChrW(1080) & ChrW(1089) & ChrW(1090) & ChrW(1088) & ChrW(1072) & ChrW(1094) & ChrW(1080) & ChrW(1102)

 DoCmd.OpenQuery stDocName, acNormal, acEdit

 stDocName = ChrW(1044) & ChrW(1086) & ChrW(1073) & ChrW(1072) & ChrW(1074) & ChrW(1080) & ChrW(1090) & ChrW(1100) & ChrW(32) & ChrW(1090) & ChrW(1077) & ChrW(1083) & ChrW(1077) & ChrW(1092) & ChrW(1086) & ChrW(1085) & ChrW(32) & ChrW(49)

 DoCmd.OpenQuery stDocName, acNormal, acEdit

If Поле92 <> "" Then

 stDocName = ChrW(1044) & ChrW(1086) & ChrW(1073) & ChrW(1072) & ChrW(1074) & ChrW(1080) & ChrW(1090) & ChrW(1100) & ChrW(32) & ChrW(1090) & ChrW(1077) & ChrW(1083) & ChrW(1077) & ChrW(1092) & ChrW(1086) & ChrW(1085) & ChrW(32) & ChrW(50)

 DoCmd.OpenQuery stDocName, acNormal, acEdit

 End If

If Поле100 <> "" Then

 stDocName = ChrW(1044) & ChrW(1086) & ChrW(1073) & ChrW(1072) & ChrW(1074) & ChrW(1080) & ChrW(1090) & ChrW(1100) & ChrW(32) & ChrW(1090) & ChrW(1077) & ChrW(1083) & ChrW(1077) & ChrW(1092) & ChrW(1086) & ChrW(1085) & ChrW(32) & ChrW(51)

 DoCmd.OpenQuery stDocName, acNormal, acEdit

 End If

 If Номер_кред_карты <> "" Then

 stDocName = ChrW(1044) & ChrW(1086) & ChrW(1073) & ChrW(1072) & ChrW(1074) & ChrW(1080) & ChrW(1090) & ChrW(1100) & ChrW(32) & ChrW(1082) & ChrW(1088) & ChrW(1077) & ChrW(1076) & ChrW(1080) & ChrW(1090) & ChrW(1085) & ChrW(1091) & ChrW(1102) & ChrW(32) & ChrW(1082) & ChrW(1072) & ChrW(1088) & ChrW(1090) & ChrW(1091)

 DoCmd.OpenQuery stDocName, acNormal, acEdit

 End If

 DoCmd.SetWarnings False

 If Me.Dirty Then Me.Dirty = False

 DoCmd.Close

Exit_Кнопка70_Click:

 Exit Sub

Err_Кнопка70_Click:

 MsgBox Err.Description

Resume Exit_Кнопка70_Click

End Sub

предметный область информационный потребность

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

Физическая модель – это привязка логической модели к конкретной среде хранения и методам хранения данных. При проектировании физической модели базы данных необходимо описать среду и метод хранения информации. Для этого необходимо изучить особенности организации данных выбранной СУБД.

Для проектирования базы данных для Интернет-магазина была выбрана СУБД MS Access. Для хранения данных в этой СУБД используются таблицы. В них хранится вся информация о предметной области. Наша база данных включает несколько взаимосвязанных таблиц. Объекты, которые были описаны при построении инфологической модели предметной области, в базе данных являются таблицами.

Представим описание объектов и связей между ними в виде физической ER-модели, сованной на методологии IDEF1X, созданной в выбранном для проектирования CASE-средстве CA ERwin Data Modeler.


На рисунках ниже представлены разработанные таблицы:

Таблица «Товар»

Таблица «Поставщик/категория»


Таблица «Товар/оценка»

Таблица «Покупатель»

Таблица «Кредитная_карта»


Таблица «Заказ/товар»

 

Таблица «Доставка»


Таблица «Сотрудник»

Таблица «Точка_выдачи»

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

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

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

-  через раздел СУБД «Таблицы», производя действия по изменению, добавлению или удалению непосредственно в таблице;

-  через раздел СУБД «Формы», выполняя необходимые действия в таблице через интерфейс формы;

-  через раздел СУБД «Запросы», выполняя запросы на обновление, добавление или удаление данных.

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

Ввод информации в базу данных может осуществляться путем ввода данных в таблицу. Но такой способ имеет многие очевидные недостатки. Поэтому для этих целей обычно используются экранные формы. Формы – это окна, через которые пользователь взаимодействует с программным кодом приложения и объектами данных. Ввод данных при помощи форм очень простой в использовании. С помощью форм также можно осуществлять полноценную навигацию по таблице.

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

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


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

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


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

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

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

 

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

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

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

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 [Заказ Товар].[№_заказа]=[Введите № заказа];

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


Товарный чек

 

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


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

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

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


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

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

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

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

Работа с нашей базой данных начинается с заставки.

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

Главное меню содержит три раздела:

·  Сайт

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

·  Отчеты

При переходе на раздел сайт, пользователь попадает на форму, эмулирующую работу сайта. На котором можно зарегистрироваться, оценить товары, оформить заказ, просмотреть информацию о компании и услугах.

Раздел «Администрирование БД» предназначен для сотрудников интернет-магазина. Доступ к каждому из подразделов защищен паролем и сотрудник имеет доступ только к тем, которые относятся к его должностным обязанностям.

Раздел отчеты содержит перечень выходных документов (напр. Сопроводительные документы на заказ или маркетинговые отчеты), которые можно сгенерировать на основе данных, содержащихся в базе.

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

 

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

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

Заключительным этапом реализации проекта стало создание отчетов при помощи мастера создания отчетов и впоследствии редактировались в режимах макета и конструктора. В отчетах были отображены результаты выполнения созданных ранее запросов.


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

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 - статья об устройстве интернет-магазина.


Страницы: 1, 2, 3, 4


Новости

Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

  скачать рефераты              скачать рефераты

Новости

скачать рефераты

Обратная связь

Поиск
Обратная связь
Реклама и размещение статей на сайте
© 2010.