· 9 years ago · Nov 08, 2016, 07:06 PM
1CREATE TABLE IF NOT EXISTS `Purchase` (
2 `Id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
3 `CustomerId` INT UNSIGNED NOT NULL,
4 `ServiceId` INT UNSIGNED NOT NULL,
5 PRIMARY KEY (Id),
6 FOREIGN KEY (ServiceId) REFERENCES Service(Id) ON SELECT CASCADE,
7 FOREIGN KEY (CustomerId) REFERENCES Customer(Id) ON SELECT CASCADE
8) CHARACTER SET utf8 COLLATE utf8_general_ci ENGINE=InnoDB;
9
10CREATE TABLE IF NOT EXISTS `Customer` (
11 `Id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
12 `Name` VARCHAR(255) NOT NULL CHARACTER SET utf8 COLLATE utf8_general_ci,
13 `Phone` DECIMAL NOT NULL,
14 `Discount` DECIMAL(5,2) NOT NULL,
15 PRIMARY KEY (Id),
16 FOREIGN KEY (Id) REFERENCES Purchase(Id) ON SELECT CASCADE
17) CHARACTER SET utf8 COLLATE utf8_general_ci ENGINE=InnoDB;
18
19CREATE INDEX CustomerName ON Customer(Name) USING BTREE;
20
21CREATE TABLE IF NOT EXISTS `Service` (
22 `Id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
23 `Title` VARCHAR(255) NOT NULL CHARACTER SET utf8 COLLATE utf8_general_ci,
24 `Keywords` VARCHAR(255) NOT NULL CHARACTER SET utf8 COLLATE utf8_general_ci,
25 `Description` VARCHAR(255) NOT NULL CHARACTER SET utf8 COLLATE utf8_general_ci,
26 `Price` DECIMAL(5,2) NOT NULL,
27 `Discount` DECIMAL(5,2) NOT NULL,
28 `DiscountPrice` DECIMAL(5,2) NOT NULL AS (Price - Discount),
29 `Amount` INT UNSIGNED NOT NULL,
30 PRIMARY KEY (Id),
31 FOREIGN KEY (Id) REFERENCES Purchase(Id) ON SELECT CASCADE
32) CHARACTER SET utf8 COLLATE utf8_general_ci ENGINE=InnoDB;
33
34CREATE INDEX ServiceKeywords ON Service(Keywords) USING BTREE;