LastVisit
DATETIME
Час останнього відвідування
OrderID
INT UNSIGNED
Номер поточного замовлення
Для полів Name і Surname (ім'я та прізвище покупця відповідно) визначена максимальна довжина поля 127 символів, цього має бути достатньо для більшості потенційних покупців, зайве збільшення пов'язано з тим, що іноді користувачі вводять і ім'я, і ​​прізвище в одному полі. p> Поле Email визначено довжиною 64 символу. Можливо, це зайве, тому що більшість адрес не перевищують 15-30 символів, але уявімо, що хтось з дуже довгим адресою захоче купити товар в цьому магазині. У випадку з інформацією про покупцях краще перестрахуватися і передбачити таку можливість. p> Поле Phone (Номер телефону для підтвердження замовлення) використовується для зберігання як номери телефону, так і коду міста/країни (наприклад, 7 - (812) -312-00-00), якщо користувач ввів цю інформацію. p> Для підтримки сесій користувача ідентифікація виконується по полях IP (поточний IP покупця) і SessionKey (унікальний код для авторизації).
За допомогою proxy-серверів кілька користувачів можуть використовувати один IP-адреса; щоб виключити можливість підміни користувача, в полі SessionKey генерується унікальний для конкретного користувача ключ сесії. p> Додаткове полі LastVisit (час останньої перевірки) допоможе керуючому каталогом видаляти "нових" користувачів, що додали товари, але не завершили покупки протягом тривалого часу. p> Первинним ключем в даному випадку є Id , але крім Id користувач також характеризується унікальним E-Mail-адресою. Основні вибірки будуть проводитися по полях Id , IP і LastVisit , ці поля включаються в окремий індекс. p> У додатку буде використана спрощена схема користувальницької кошики. Інформація про доданому в корзинку товар безпосередньо поміщається в таблицю. Для реалізації спрощеної схеми користувальницької кошики досить параметрів, описаних в таблиці 7.
Таблиця 7. Поля таблиці користувальницької кошики (Orders)
Поле таблиці
Тип даних
Опис
Id
INT UNSIGNED
Номер замовлення
Amount
TINYINT
Число товарів, доданих в купівельну кошик
Book
INT UNSIGNED
Ідентифікатор доданого товару
У даній таблиці первинний ключ НЕ використовується. Записи вибираються згідно номеру замовлення Id , для якого необхідно визначити індекс.
Остаточна модель логічної структури бази даних представлена ​​на малюнку 4.
Малюнок 4. Модель логічної структури Інтернет-магазину
Після уточнення структури бази даних можна приступати до створення сценарію SQL. Потрібно зауважити, що в нашому випадку це не більше ніж типовий сценарій, що описує структуру і зв'язку бази даних, але в далекій шем на його основі будуть будуватися сценарії автоматизації створення БД.
Якщо для створення схеми бази даних ви користувалися яких-небудь CASE-засобом, можливо, ви зможете згенерувати сценарій автоматично, на основі складеної моделі бази даних. p> 3.2.Оптімізація структури, навігації та інформаційного наповнення Інтернет-магазину
Для чіткого представлення структури створюваного Інтернет-магазину будується навігаційна карта із зазначенням всіх можливих сторінок, на підставі якої надалі розроблятиметься сайт.
Як вже зазначалося вище, сайт вводиться в дію поетапно. Спочатку створюється Інтернет-каталог, після чого до нього додається недостатня функціональність Інтернет-магазину. Навігаційна карта повинна бути складена для виконання кожного з етапів розробки.
Навігаційна карта Інтернет-каталогу книжкового магазину представлена ​​на рисунку 5.
З головної сторінки Інтернет-каталогу користувач переходить на сторінки каталогу, в якому представлений список книг і їх короткий опис, вказані посилання на інформацію про автора, який написав книгу, і видавництві, її випустять. Інформація про автора складається з короткої біографічної довідки та списку книг цього автора, представлених в Інтернет-каталозі. Аналогічно, сторінка з інформацією про видавництво містить опис видавництва і список книг, випущених ним і продаваних в Інтернет-каталозі.
Малюнок 5. Навігаційна карта Інтернет-каталогу
У результаті пошуку на екран виводиться список книг, що задовольняють параметрам пошуку. Доступ до засобів пошуку відбувається з будь-якої сторінки Інтернет-додатки. p> Інтер...