Створюємо таблицю goods в базі даних
SQL код:
CREATE TABLE IF NOT EXISTS `goods` (
`goods_id` int (10) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar (100) NOT NULL,
`keywords` varchar (255) NOT NULL,
`description` varchar (255) NOT NULL,
`img` varchar (30) NOT NULL,
`goods_catid` tinyint (3) unsigned NOT NULL,
`anons` text NOT NULL,
`content` text NOT NULL,
`visible` enum ( 0 , 1 ) NOT NULL DEFAULT 1 ,
`hits` enum ( 0 , 1 ) NOT NULL DEFAULT 0 ,
`new` enum ( 0 , 1 ) NOT NULL DEFAULT 0 ,
`sale` enum ( 0 , 1 ) NOT NULL DEFAULT 0 ,
`price` float NOT NULL DEFAULT 0 ,
`date` date NOT NULL,
`img_slide` varchar (100) NOT NULL, KEY (` goods_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;
Таблиця товарів
2.5 Таблиця замовлень
За ідеї в таблицю замовлень ми повинні збирати такі дані: ключ замовлення, ключ покупця, ключ способів доставки, дату замовлення, ключ статусу замовлення, примітка до замовлення. Ми назвемо таблицю замовлень - orders. Вона матиме наступну структуру:
1) orders_id - це поле буде лічильником і первинним ключем таблиці orders. Тип поля mediumint (50) unsigned
2) customer_id - ключ покупця. Тип поля mediumint (10) unsigned
3) date - дата здійснення замовлення, тип поля datetime
) dostavka_id - ключ способу доставки, тип поля tinyint (3) unsigned
) status - ключ статусу замовлення, тип поля tinyint (2) unsigned
Первинний ключ таблиці orders - order_id.
Тепер ми приступимо безпосередньо до написання SQL коду для додавання нашої таблиці в базу даних. Виконаємо наступний запит до бази даних: TABLE IF NOT EXISTS `orders` (
`order_id` mediumint (50) unsigned NOT NULL AUTO_INCREMENT,
`customer_id` mediumint (10) unsigned NOT NULL,
`date` datetime NOT NULL,
`dostavka_id` tinyint (3) unsigned NOT NULL,
`status` tinyint (2) NOT NULL DEFAULT 0 , KEY (` order_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;
В результаті ми отримали наступну структуру.
Таблиця замовлень
2.6 Таблиця замовлених товарів
Ми створили таблицю orders, де ми зберігаємо ключ замовлення, ключ покупця, ключ способів доставки, дату замовлення, ключ статусу замовлення. Але в таблицю orders ми не зберігаємо товари, які замовив покупець, а це для функціональності інтернет-магазину дуже важливий момент. Ми не будемо зберігати дані про замовлені товари в таблиці orders, так як це буде не дуже раціонально стосовно структурі таблиці і це вельми ускладнити вибірку даних. Для цієї справи ми створимо окрему таблицю, де ми буде збирати товари, які замовив покупець. Назвемо цю таблицю «zakaz_tovar».
Створимо структуру таблиці:
1) zakaz_tovar_id, - лічильник, тип даних int (10) unsigned AUTO_INCREMENT
2) orders_id - ключ замовлення, тип даних mediumint (50) unsigned
) goods_id - ключ товару, тип даних int (10) unsigned AUTO_INCREMENT
) quantity - кількість замовленого товару, тип даних tinyint (3) unsigned
Оскільки в нашому інтернет-магазині можна при замовленні товару вказати його кількість ми в таблиці zakaz_tovar додали поле quantity. Тепер ми приступимо до написання SQL коду, для додавання нашої таблиці базу даних.
SQL код: TABLE IF NOT EXISTS `zakaz_tovar` (
`zakaz_tovar_id` int (10) unsigned NOT NULL AUTO_INCREMENT,
`orders_id` mediumint (50) unsigned NOT NULL,
`goods_id` int (10) unsigned NOT NULL,
`quantity` tinyint (3) unsigned NOT NULL, KEY (` zakaz_tovar_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;
В результаті ми отримали:
Таблиця замовлених товарів
2.7 Підсумки створення бази даних