CREATE TABLE Category (
catid VARCHAR(32) NOT NULL PRIMARY KEY, INDEX (catid),
title VARCHAR(64) NOT NULL,
parent VARCHAR(32) REFERENCES Category, INDEX (parent)
);
CREATE TABLE Customer (
login VARCHAR(32) NOT NULL PRIMARY KEY, INDEX (login),
name VARCHAR(255) NOT NULL,
password VARCHAR(32) NOT NULL,
email VARCHAR(255),
address VARCHAR(255) NOT NULL
);
CREATE TABLE Product (
prodid VARCHAR(32) NOT NULL PRIMARY KEY, INDEX (prodid),
catid VARCHAR(32) NOT NULL REFERENCES Category,
INDEX (catid),
description VARCHAR(255) NOT NULL
);
CREATE TABLE Session (
sessionid VARCHAR(32) NOT NULL PRIMARY KEY,
INDEX (sessionid),
login VARCHAR(32) REFERENCES Customer,
start DATETIME,
lastuse DATETIME
);
CREATE TABLE Cart (
sessionid VARCHAR(32) NOT NULL REFERENCES Session,
INDEX (sessionid),
prodid VARCHAR(32) NOT NULL REFERENCES Product,
INDEX (prodid),
quantity INT(11) NOT NULL,
PRIMARY KEY (sessionid, prodid)
);
|