Автор: Пользователь скрыл имя, 12 Сентября 2011 в 08:37, курсовая работа
Задача: спроектировать базу данных интернет-магазина. Для этого в первую очередь необходимо описать предметную область: Магазин осуществляет продажу различных категорий товаров. Без ограничения покупателей по возрасту. Оплату можно производить при помощи кредитной карты, интернет-кошельков, наличными при доставке или при получении товара в одной из точек выдачи, расположенных в Москве.
1. Описание предметной области. Постановка задачи
2. Выбор средств проектирования и СУБД.
3. Построение инфологической (концептуальной) модели предметной области
4. Проектирование логической структуры базы данных
5. Выявление полного перечня ограничений целостности, присущего данной предметной области
6. Проектирование физической структуры базы данных
7. Организация ввода данных в БД
8. Организация корректировки БД
9. Описание информационных потребностей пользователей и выбор способов их реализации
10. Разработка интерфейса
11. Реализация проекта в среде конкретной СУБД
12. Список использованной литературы
Доставка
(№_заказа (Числовой(Длинное целое)),
Суммарный_вес_заказа (Числовой(целое)),
Суммарный_объем_заказа (Числовой(Длинное
целое)), Дата_доставки(Дата/время), Время_доставки
(Текстовый(30)), Удаленность_МКАД_км (Числовой
(байт)), Стоимость_доставки (Денежный),
Табельный_номер (Числовой(Длинное
целое)), Статус_доставки (Текстовый(30)),
Вид_доставки (Текстовый(40))) Сотрудник
(Табельный_номер (Счетчик(Длинное целое)),
ФИО (Текстовый(100)), E-mail (Текстовый(100)),
Должность (Текстовый(50)), Факс (Текстовый(30)),
Телефон(Текстовый(50))) Точка_выдачи (Название_точки
(Текстовый(50)), Адрес_точки (Поле МЕМО),
Время работы (Текстовый(15)), Схема_проезда(Поле
объекта OLE)) Точка_выдач/Телефон (Телефон
(Текстовый(50), Название_точки (Текстовый(50))
Выявление полного перечня ограничений целостности, присущего данной предметной области
Обеспечение целостности данных является важнейшей задачей при проектировании и эксплуатации систем обработки данных.
Целостность – это актуальность и непротиворечивость информации, ее защищенность от разрушения и несанкционированного изменения. Целостность является одним из аспектов информационной безопасности наряду с доступностью – возможностью с приемлемыми затратами получить требуемую информационную услугу, и конфиденциальностью – защитой от несанкционированного прочтения. Ограничение целостности – это набор специальных предложений, описывающих допустимые значения отдельных информационных единиц и связей между ними. Большинство ограничений целостности вызваны спецификой предметной области. Нарушение ограничений целостности может происходить по нескольким причинам: ошибки, преднамеренное нарушение, вирусы, сбои. Поэтому необходимо контролировать ограничения целостности. Помимо упомянутых нами на стадии описания предметной области ограничений целостности, во время разработки базы данных интернет-магазина нами также были выявлены многие другие ограничения. Большинство из них контролируются непосредственно в таблицах. Поскольку ввод всех данных в таблице осуществляется через разработанные нами вспомогательные формы, также существует достаточно большое количество ограничений, которые контролируются средствами конструктора форм, а также при помощи встроенного в среду MS ACCESS визуального объектно-ориентированного языка Visual Basic. Далее будут перечислены все ограничения целостности, которые будут контролироваться в данном курсовом проекте, а также выбранные способы реализации контроля целостности для каждого из ограничений.
Ограничения, контролируемые в таблицах:
1.
Текстовое поле «E-mail» в
Аналогичным образом ограничение на данное поле контролируется в таблицах «Сотрудник» и «Поставщик»
2.
Текстовое поле «ФИО» в
Аналогичным образом ограничение на данное поле контролируется в таблице «Сотрудник»
3. Значения поля «Дата_рождения» в таблице «Покупатель» не может превышать текущую дату и должно быть определенного вида, что контролируется маской ввода
4.
Поле «Дата_регистрации» в
5.
Поле «Пол» в таблице «
6.
Поле «Образование» в таблице
«Покупатель» содержит
7.
Поле «Логин» в таблице «
Аналогичным образом ограничение на данное поле контролируется в таблицах «заказ», «кредитная карта» и «товар/оценка»
8.
Поле «Телефон» в таблице «
Аналогичным образом ограничение на данное поле контролируется в таблицах «поставщик», «сотрудник» и «точка выдачи». Ограничение подобного рода установлено и на поле «факс» в таблицах «сотрудник» и «точка выдачи»
9.
Поле «id_товара» в таблице «
Аналогичным образом ограничение на данное поле контролируется в таблице «Заказ товар»
10.
Поле «Оценка» в таблице «
11.
Текстовое поле «Время_работы»
в таблице «Точка выдачи»
12.Поле
«Название_точки» в таблице «
Аналогичным образом ограничение на данное поле контролируется в таблице «заказ»
13.
Поле «Должность» в таблице
«Сотрудник» содержит
14.
Поле «Номер_кред_карты» в
15.
Поле «Имя_владельца» в
16.
Поле «Проверочный_код» в
17.
Поле «Срок_истечения» в
18.
Поле «№_заказа» в таблице
«Заказ» содержит
Аналогичным образом ограничение на данное поле контролируется в таблице «доставка»
19.
Поле «Дата_заказа» в таблице
«Заказ» должно быть
20.
Поле «Время_заказа» в таблице
«Заказ» должно быть
21.
Поле «Статус_заказа» в
22.
Поле «Способ_оплаты» в
23.
Поле «Способ_получения» в
24.
Поле «Табельный_номер» в
Аналогичным образом ограничение на данное поле контролируется в таблице «доставка»
25.
Поле «Удаленность_МКАД» в
26.
Поле «Статус_доставки» в
27.
Поле «Вид_доставки» в таблице
«Доставка» содержит
Ограничения, контролируемые на формах посредством Visual Basic:
1.
Для организации ограничений
на доступ определенных
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(
Суммарный_объем_заказа.
Суммарный_объем_заказа
= Суммарный_объем_заказа.
Стоимость_заказа.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 = " "