· 5 years ago · Nov 26, 2020, 09:58 AM
1-- MySQL Script generated by MySQL Workbench
2-- Thu Nov 26 09:39:44 2020
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 db_recetas
12-- -----------------------------------------------------
13
14-- -----------------------------------------------------
15-- Schema db_recetas
16-- -----------------------------------------------------
17CREATE SCHEMA IF NOT EXISTS `db_recetas` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_spanish_ci ;
18USE `db_recetas` ;
19
20-- -----------------------------------------------------
21-- Table `db_recetas`.`dificultad`
22-- -----------------------------------------------------
23CREATE TABLE IF NOT EXISTS `db_recetas`.`dificultad` (
24 `id` INT NOT NULL AUTO_INCREMENT,
25 `dificultad` VARCHAR(45) NOT NULL,
26 PRIMARY KEY (`id`),
27 UNIQUE INDEX `dificultad_UNIQUE` (`dificultad` ASC) VISIBLE)
28ENGINE = InnoDB;
29
30
31-- -----------------------------------------------------
32-- Table `db_recetas`.`pais`
33-- -----------------------------------------------------
34CREATE TABLE IF NOT EXISTS `db_recetas`.`pais` (
35 `id` INT NOT NULL AUTO_INCREMENT,
36 `pais` VARCHAR(100) NOT NULL,
37 PRIMARY KEY (`id`),
38 UNIQUE INDEX `pais_UNIQUE` (`pais` ASC) VISIBLE)
39ENGINE = InnoDB;
40
41
42-- -----------------------------------------------------
43-- Table `db_recetas`.`temporadareceta`
44-- -----------------------------------------------------
45CREATE TABLE IF NOT EXISTS `db_recetas`.`temporadareceta` (
46 `id` INT NOT NULL AUTO_INCREMENT,
47 `temporadareceta` VARCHAR(45) NOT NULL,
48 PRIMARY KEY (`id`))
49ENGINE = InnoDB;
50
51
52-- -----------------------------------------------------
53-- Table `db_recetas`.`tipoplato`
54-- -----------------------------------------------------
55CREATE TABLE IF NOT EXISTS `db_recetas`.`tipoplato` (
56 `id` INT NOT NULL AUTO_INCREMENT,
57 `tipoplato` VARCHAR(45) NOT NULL,
58 PRIMARY KEY (`id`))
59ENGINE = InnoDB;
60
61
62-- -----------------------------------------------------
63-- Table `db_recetas`.`receta`
64-- -----------------------------------------------------
65CREATE TABLE IF NOT EXISTS `db_recetas`.`receta` (
66 `id` INT NOT NULL AUTO_INCREMENT,
67 `nombre` VARCHAR(100) NULL,
68 `descripcion` TEXT NULL,
69 `comensal` TINYINT NOT NULL,
70 `duracion` TIME NOT NULL,
71 `pais_id` INT NOT NULL,
72 `dificultad_id` INT NOT NULL,
73 `temporadareceta_id` INT NOT NULL,
74 `tipoplato_id` INT NOT NULL,
75 PRIMARY KEY (`id`),
76 INDEX `fk_receta_pais_idx` (`pais_id` ASC) VISIBLE,
77 INDEX `fk_receta_dificultad1_idx` (`dificultad_id` ASC) VISIBLE,
78 INDEX `fk_receta_temporadareceta1_idx` (`temporadareceta_id` ASC) VISIBLE,
79 INDEX `fk_receta_tipoplato1_idx` (`tipoplato_id` ASC) VISIBLE,
80 FULLTEXT INDEX `idx_nombre` (`nombre`) INVISIBLE,
81 FULLTEXT INDEX `idx_descripcion` (`descripcion`) VISIBLE,
82 CONSTRAINT `fk_receta_pais`
83 FOREIGN KEY (`pais_id`)
84 REFERENCES `db_recetas`.`pais` (`id`)
85 ON DELETE NO ACTION
86 ON UPDATE NO ACTION,
87 CONSTRAINT `fk_receta_dificultad1`
88 FOREIGN KEY (`dificultad_id`)
89 REFERENCES `db_recetas`.`dificultad` (`id`)
90 ON DELETE NO ACTION
91 ON UPDATE NO ACTION,
92 CONSTRAINT `fk_receta_temporadareceta1`
93 FOREIGN KEY (`temporadareceta_id`)
94 REFERENCES `db_recetas`.`temporadareceta` (`id`)
95 ON DELETE NO ACTION
96 ON UPDATE NO ACTION,
97 CONSTRAINT `fk_receta_tipoplato1`
98 FOREIGN KEY (`tipoplato_id`)
99 REFERENCES `db_recetas`.`tipoplato` (`id`)
100 ON DELETE NO ACTION
101 ON UPDATE NO ACTION)
102ENGINE = InnoDB;
103
104
105-- -----------------------------------------------------
106-- Table `db_recetas`.`grupoalimento`
107-- -----------------------------------------------------
108CREATE TABLE IF NOT EXISTS `db_recetas`.`grupoalimento` (
109 `id` INT NOT NULL AUTO_INCREMENT,
110 `grupoalimento` VARCHAR(50) NOT NULL,
111 PRIMARY KEY (`id`))
112ENGINE = InnoDB;
113
114
115-- -----------------------------------------------------
116-- Table `db_recetas`.`ingrediente`
117-- -----------------------------------------------------
118CREATE TABLE IF NOT EXISTS `db_recetas`.`ingrediente` (
119 `id` INT NOT NULL AUTO_INCREMENT,
120 `ingrediente` VARCHAR(45) NOT NULL,
121 `grupoalimento_id` INT NOT NULL,
122 PRIMARY KEY (`id`),
123 INDEX `fk_ingrediente_grupoalimento1_idx` (`grupoalimento_id` ASC) VISIBLE,
124 CONSTRAINT `fk_ingrediente_grupoalimento1`
125 FOREIGN KEY (`grupoalimento_id`)
126 REFERENCES `db_recetas`.`grupoalimento` (`id`)
127 ON DELETE NO ACTION
128 ON UPDATE NO ACTION)
129ENGINE = InnoDB;
130
131
132-- -----------------------------------------------------
133-- Table `db_recetas`.`ingrediente_has_receta`
134-- -----------------------------------------------------
135CREATE TABLE IF NOT EXISTS `db_recetas`.`ingrediente_has_receta` (
136 `ingrediente_id` INT NOT NULL,
137 `receta_id` INT NOT NULL,
138 `cantidad` TINYINT NOT NULL,
139 PRIMARY KEY (`ingrediente_id`, `receta_id`),
140 INDEX `fk_ingrediente_has_receta_receta1_idx` (`receta_id` ASC) VISIBLE,
141 INDEX `fk_ingrediente_has_receta_ingrediente1_idx` (`ingrediente_id` ASC) VISIBLE,
142 CONSTRAINT `fk_ingrediente_has_receta_ingrediente1`
143 FOREIGN KEY (`ingrediente_id`)
144 REFERENCES `db_recetas`.`ingrediente` (`id`)
145 ON DELETE NO ACTION
146 ON UPDATE NO ACTION,
147 CONSTRAINT `fk_ingrediente_has_receta_receta1`
148 FOREIGN KEY (`receta_id`)
149 REFERENCES `db_recetas`.`receta` (`id`)
150 ON DELETE NO ACTION
151 ON UPDATE NO ACTION)
152ENGINE = InnoDB;
153
154
155-- -----------------------------------------------------
156-- Table `db_recetas`.`temporadaingrediente`
157-- -----------------------------------------------------
158CREATE TABLE IF NOT EXISTS `db_recetas`.`temporadaingrediente` (
159 `id` INT NOT NULL AUTO_INCREMENT,
160 `temporadaingrediente` VARCHAR(45) NOT NULL,
161 PRIMARY KEY (`id`),
162 UNIQUE INDEX `temporadaingrediente_UNIQUE` (`temporadaingrediente` ASC) VISIBLE)
163ENGINE = InnoDB;
164
165
166-- -----------------------------------------------------
167-- Table `db_recetas`.`temporadaingrediente_has_ingrediente`
168-- -----------------------------------------------------
169CREATE TABLE IF NOT EXISTS `db_recetas`.`temporadaingrediente_has_ingrediente` (
170 `temporadaingrediente_id` INT NOT NULL,
171 `ingrediente_id` INT NOT NULL,
172 PRIMARY KEY (`temporadaingrediente_id`, `ingrediente_id`),
173 INDEX `fk_temporadaingrediente_has_ingrediente_ingrediente1_idx` (`ingrediente_id` ASC) VISIBLE,
174 INDEX `fk_temporadaingrediente_has_ingrediente_temporadaingredient_idx` (`temporadaingrediente_id` ASC) VISIBLE,
175 CONSTRAINT `fk_temporadaingrediente_has_ingrediente_temporadaingrediente1`
176 FOREIGN KEY (`temporadaingrediente_id`)
177 REFERENCES `db_recetas`.`temporadaingrediente` (`id`)
178 ON DELETE NO ACTION
179 ON UPDATE NO ACTION,
180 CONSTRAINT `fk_temporadaingrediente_has_ingrediente_ingrediente1`
181 FOREIGN KEY (`ingrediente_id`)
182 REFERENCES `db_recetas`.`ingrediente` (`id`)
183 ON DELETE NO ACTION
184 ON UPDATE NO ACTION)
185ENGINE = InnoDB;
186
187
188-- -----------------------------------------------------
189-- Table `db_recetas`.`consejo`
190-- -----------------------------------------------------
191CREATE TABLE IF NOT EXISTS `db_recetas`.`consejo` (
192 `id` INT NOT NULL AUTO_INCREMENT,
193 `consejo` VARCHAR(255) NOT NULL,
194 PRIMARY KEY (`id`))
195ENGINE = InnoDB;
196
197
198-- -----------------------------------------------------
199-- Table `db_recetas`.`receta_has_consejo`
200-- -----------------------------------------------------
201CREATE TABLE IF NOT EXISTS `db_recetas`.`receta_has_consejo` (
202 `receta_id` INT NOT NULL,
203 `consejo_id` INT NOT NULL,
204 PRIMARY KEY (`receta_id`, `consejo_id`),
205 INDEX `fk_receta_has_consejo_consejo1_idx` (`consejo_id` ASC) VISIBLE,
206 INDEX `fk_receta_has_consejo_receta1_idx` (`receta_id` ASC) VISIBLE,
207 CONSTRAINT `fk_receta_has_consejo_receta1`
208 FOREIGN KEY (`receta_id`)
209 REFERENCES `db_recetas`.`receta` (`id`)
210 ON DELETE NO ACTION
211 ON UPDATE NO ACTION,
212 CONSTRAINT `fk_receta_has_consejo_consejo1`
213 FOREIGN KEY (`consejo_id`)
214 REFERENCES `db_recetas`.`consejo` (`id`)
215 ON DELETE NO ACTION
216 ON UPDATE NO ACTION)
217ENGINE = InnoDB;
218
219
220SET SQL_MODE=@OLD_SQL_MODE;
221SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
222SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
223