· 4 years ago · Mar 05, 2021, 12:56 PM
1-- MySQL Script generated by MySQL Workbench
2-- Fri Mar 5 15:49:48 2021
3-- Model: New Model Version: 1.0
4-- MySQL Workbench Forward Engineering
5
6SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
7SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
8SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';
9
10-- -----------------------------------------------------
11-- Schema internet_sales
12-- -----------------------------------------------------
13
14-- -----------------------------------------------------
15-- Schema internet_sales
16-- -----------------------------------------------------
17CREATE SCHEMA IF NOT EXISTS `internet_sales` DEFAULT CHARACTER SET utf8 ;
18USE `internet_sales` ;
19
20-- -----------------------------------------------------
21-- Table `internet_sales`.`users`
22-- -----------------------------------------------------
23CREATE TABLE IF NOT EXISTS `internet_sales`.`users` (
24 `id` INT NOT NULL AUTO_INCREMENT,
25 `fio` VARCHAR(255) NOT NULL,
26 `login` VARCHAR(255) NULL,
27 `password` VARCHAR(255) NOT NULL,
28 `e_mail` VARCHAR(255) NULL,
29 `type` VARCHAR(45) NULL,
30 PRIMARY KEY (`id`, `fio`),
31 UNIQUE INDEX `idusers_UNIQUE` (`id` ASC) VISIBLE,
32 UNIQUE INDEX `login_UNIQUE` (`login` ASC) VISIBLE)
33ENGINE = InnoDB;
34
35
36-- -----------------------------------------------------
37-- Table `internet_sales`.`settings`
38-- -----------------------------------------------------
39CREATE TABLE IF NOT EXISTS `internet_sales`.`settings` (
40 `id` INT NOT NULL AUTO_INCREMENT,
41 `host` VARCHAR(45) NULL,
42 `db` VARCHAR(45) NULL,
43 `user` VARCHAR(45) NOT NULL,
44 `password` VARCHAR(45) NOT NULL,
45 PRIMARY KEY (`id`),
46 UNIQUE INDEX `id_UNIQUE` (`id` ASC) VISIBLE)
47ENGINE = InnoDB;
48
49
50-- -----------------------------------------------------
51-- Table `internet_sales`.`shops`
52-- -----------------------------------------------------
53CREATE TABLE IF NOT EXISTS `internet_sales`.`shops` (
54 `id` INT NOT NULL AUTO_INCREMENT,
55 `name` VARCHAR(255) NULL,
56 `adress` VARCHAR(255) NULL,
57 `tel` VARCHAR(100) NULL,
58 `site` VARCHAR(100) NULL,
59 `email` VARCHAR(100) NULL,
60 PRIMARY KEY (`id`),
61 UNIQUE INDEX `id_UNIQUE` (`id` ASC) VISIBLE)
62ENGINE = InnoDB;
63
64
65-- -----------------------------------------------------
66-- Table `internet_sales`.`product_type`
67-- -----------------------------------------------------
68CREATE TABLE IF NOT EXISTS `internet_sales`.`product_type` (
69 `id` INT NOT NULL AUTO_INCREMENT,
70 `name` VARCHAR(255) NULL,
71 PRIMARY KEY (`id`),
72 UNIQUE INDEX `id_UNIQUE` (`id` ASC) VISIBLE)
73ENGINE = InnoDB;
74
75
76-- -----------------------------------------------------
77-- Table `internet_sales`.`products`
78-- -----------------------------------------------------
79CREATE TABLE IF NOT EXISTS `internet_sales`.`products` (
80 `name` VARCHAR(255) NULL,
81 `shop_id` INT NOT NULL,
82 `type_id` INT NOT NULL,
83 `brand` VARCHAR(255) NULL,
84 `model` VARCHAR(255) NULL,
85 `data` TINYTEXT NULL,
86 `img` VARCHAR(255) NULL,
87 `price` VARCHAR(45) NULL,
88 `warranty` VARCHAR(45) NULL,
89 PRIMARY KEY (`shop_id`, `type_id`),
90 INDEX `shop_to_products_idx` (`shop_id` ASC) VISIBLE,
91 INDEX `product_to_type_idx` (`type_id` ASC) VISIBLE,
92 CONSTRAINT `shop_to_products`
93 FOREIGN KEY (`shop_id`)
94 REFERENCES `internet_sales`.`shops` (`id`)
95 ON DELETE CASCADE
96 ON UPDATE CASCADE,
97 CONSTRAINT `product_to_type`
98 FOREIGN KEY (`type_id`)
99 REFERENCES `internet_sales`.`product_type` (`id`)
100 ON DELETE NO ACTION
101 ON UPDATE NO ACTION,
102 CONSTRAINT `shop_to_orders`
103 FOREIGN KEY (`shop_id`)
104 REFERENCES `internet_sales`.`shops` (`id`)
105 ON DELETE CASCADE
106 ON UPDATE CASCADE,
107 CONSTRAINT `users_to_orders`
108 FOREIGN KEY ()
109 REFERENCES `internet_sales`.`users` ()
110 ON DELETE NO ACTION
111 ON UPDATE NO ACTION)
112ENGINE = InnoDB;
113
114
115-- -----------------------------------------------------
116-- Table `internet_sales`.`orders`
117-- -----------------------------------------------------
118CREATE TABLE IF NOT EXISTS `internet_sales`.`orders` (
119 `id` INT NOT NULL AUTO_INCREMENT,
120 `shop_id` INT NOT NULL,
121 `product_id` INT NOT NULL,
122 `fio` INT NOT NULL,
123 `date` DATE NULL,
124 `quantity` TINYINT NULL,
125 `tel` VARCHAR(255) NULL,
126 `confirm` TINYINT NULL,
127 PRIMARY KEY (`id`, `shop_id`, `product_id`, `fio`),
128 UNIQUE INDEX `id_UNIQUE` (`id` ASC) VISIBLE)
129ENGINE = InnoDB;
130
131
132-- -----------------------------------------------------
133-- Table `internet_sales`.`deliveries`
134-- -----------------------------------------------------
135CREATE TABLE IF NOT EXISTS `internet_sales`.`deliveries` (
136 `order_id` INT NOT NULL AUTO_INCREMENT,
137 `fio` INT NOT NULL,
138 `adress` VARCHAR(255) NULL,
139 `time` VARCHAR(45) NULL,
140 `date` DATE NULL,
141 `confirm` TINYINT NULL,
142 PRIMARY KEY (`order_id`, `fio`),
143 UNIQUE INDEX `order_id_UNIQUE` (`order_id` ASC) VISIBLE)
144ENGINE = InnoDB;
145
146
147SET SQL_MODE=@OLD_SQL_MODE;
148SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
149SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
150