· 4 years ago · Jun 29, 2021, 10:04 AM
1SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
2SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
3SET @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';
4
5-- -----------------------------------------------------
6-- Schema mydb
7-- -----------------------------------------------------
8
9-- -----------------------------------------------------
10-- Schema mydb
11-- -----------------------------------------------------
12CREATE SCHEMA IF NOT EXISTS `mydb` DEFAULT CHARACTER SET utf8 ;
13USE `mydb` ;
14
15-- -----------------------------------------------------
16-- Table `mydb`.`customers`
17-- -----------------------------------------------------
18CREATE TABLE IF NOT EXISTS `mydb`.`customers` (
19 `id` INT NOT NULL AUTO_INCREMENT,
20 `firstname` VARCHAR(45) NOT NULL,
21 `secondname` VARCHAR(45) NOT NULL,
22 `address` VARCHAR(255) NOT NULL,
23 `tell` VARCHAR(45) NOT NULL,
24 PRIMARY KEY (`id`),
25 UNIQUE INDEX `id_UNIQUE` (`id` ASC) VISIBLE)
26ENGINE = InnoDB;
27
28
29-- -----------------------------------------------------
30-- Table `mydb`.`catalog`
31-- -----------------------------------------------------
32CREATE TABLE IF NOT EXISTS `mydb`.`catalog` (
33 `id` INT NOT NULL AUTO_INCREMENT,
34 `name` VARCHAR(255) NOT NULL,
35 `cost` VARCHAR(45) NOT NULL,
36 PRIMARY KEY (`id`),
37 UNIQUE INDEX `id_UNIQUE` (`id` ASC) VISIBLE)
38ENGINE = InnoDB;
39
40
41-- -----------------------------------------------------
42-- Table `mydb`.`orders`
43-- -----------------------------------------------------
44CREATE TABLE IF NOT EXISTS `mydb`.`orders` (
45 `id` INT NOT NULL AUTO_INCREMENT,
46 `customer` INT NOT NULL,
47 PRIMARY KEY (`id`, `customer`),
48 UNIQUE INDEX `id_UNIQUE` (`id` ASC) VISIBLE,
49 INDEX `customer_idx` (`customer` ASC) VISIBLE,
50 CONSTRAINT `orders_to_customers`
51 FOREIGN KEY (`customer`)
52 REFERENCES `mydb`.`customers` (`id`)
53 ON DELETE CASCADE
54 ON UPDATE CASCADE)
55ENGINE = InnoDB;
56
57
58-- -----------------------------------------------------
59-- Table `mydb`.`order`
60-- -----------------------------------------------------
61CREATE TABLE IF NOT EXISTS `mydb`.`order` (
62 `id` INT NOT NULL,
63 `product` INT NOT NULL,
64 `quantity` INT NOT NULL,
65 PRIMARY KEY (`id`, `product`),
66 INDEX `order_to_catalog_idx` (`product` ASC) VISIBLE,
67 CONSTRAINT `order_to_orders`
68 FOREIGN KEY (`id`)
69 REFERENCES `mydb`.`orders` (`id`)
70 ON DELETE CASCADE
71 ON UPDATE CASCADE,
72 CONSTRAINT `order_to_catalog`
73 FOREIGN KEY (`product`)
74 REFERENCES `mydb`.`catalog` (`id`)
75 ON DELETE CASCADE
76 ON UPDATE CASCADE)
77ENGINE = InnoDB;
78
79
80SET SQL_MODE=@OLD_SQL_MODE;
81SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
82SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;