· 6 years ago · Jun 02, 2019, 08:00 PM
1-- MySQL Workbench Forward Engineering
2
3SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
4SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
5SET @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';
6
7-- -----------------------------------------------------
8-- Schema mydb
9-- -----------------------------------------------------
10
11-- -----------------------------------------------------
12-- Schema mydb
13-- -----------------------------------------------------
14CREATE SCHEMA IF NOT EXISTS `mydb` DEFAULT CHARACTER SET utf8 ;
15USE `mydb` ;
16
17-- -----------------------------------------------------
18-- Table `mydb`.`companies`
19-- -----------------------------------------------------
20CREATE TABLE IF NOT EXISTS `mydb`.`companies` (
21 `id` INT NOT NULL AUTO_INCREMENT,
22 `nome` VARCHAR(100) NULL,
23 `cnpj` VARCHAR(18) NULL,
24 `endereco` VARCHAR(225) NULL,
25 `classificacao` VARCHAR(45) NULL,
26 PRIMARY KEY (`id`))
27ENGINE = InnoDB;
28
29
30-- -----------------------------------------------------
31-- Table `mydb`.`engineers`
32-- -----------------------------------------------------
33CREATE TABLE IF NOT EXISTS `mydb`.`engineers` (
34 `id` INT NOT NULL AUTO_INCREMENT,
35 `nome` VARCHAR(100) GENERATED ALWAYS AS (),
36 `tipo` VARCHAR(45) NULL,
37 `status` VARCHAR(45) NULL,
38 `companies_id` INT NOT NULL,
39 PRIMARY KEY (`id`),
40 INDEX `fk_engineers_companies_idx` (`companies_id` ASC) VISIBLE,
41 CONSTRAINT `fk_engineers_companies`
42 FOREIGN KEY (`companies_id`)
43 REFERENCES `mydb`.`companies` (`id`)
44 ON DELETE NO ACTION
45 ON UPDATE NO ACTION)
46ENGINE = InnoDB;
47
48
49-- -----------------------------------------------------
50-- Table `mydb`.`buildings`
51-- -----------------------------------------------------
52CREATE TABLE IF NOT EXISTS `mydb`.`buildings` (
53 `id` INT NOT NULL AUTO_INCREMENT,
54 `endereco` VARCHAR(225) NULL,
55 `n_contrato` INT NULL,
56 `data_inicio` DATE NULL,
57 `data_termino` DATE NULL,
58 `status` VARCHAR(45) NULL,
59 `id_empresa_contratante` INT NOT NULL,
60 `id_empresa_contratada` INT NOT NULL,
61 PRIMARY KEY (`id`),
62 CONSTRAINT `fk_buildings_companies1`
63 FOREIGN KEY ()
64 REFERENCES `mydb`.`companies` ()
65 ON DELETE NO ACTION
66 ON UPDATE NO ACTION,
67 CONSTRAINT `fk_buildings_companies2`
68 FOREIGN KEY ()
69 REFERENCES `mydb`.`companies` ()
70 ON DELETE NO ACTION
71 ON UPDATE NO ACTION)
72ENGINE = InnoDB;
73
74
75-- -----------------------------------------------------
76-- Table `mydb`.`constructions`
77-- -----------------------------------------------------
78CREATE TABLE IF NOT EXISTS `mydb`.`constructions` (
79 `id` INT NOT NULL AUTO_INCREMENT,
80 `buildings_id` INT NOT NULL,
81 `id_fiscal` INT NOT NULL,
82 `id_execucao` INT NOT NULL,
83 PRIMARY KEY (`id`),
84 INDEX `fk_constructions_buildings1_idx` (`buildings_id` ASC) VISIBLE,
85 CONSTRAINT `fk_constructions_buildings1`
86 FOREIGN KEY (`buildings_id`)
87 REFERENCES `mydb`.`buildings` (`id`)
88 ON DELETE NO ACTION
89 ON UPDATE NO ACTION,
90 CONSTRAINT `fk_constructions_engineers1`
91 FOREIGN KEY ()
92 REFERENCES `mydb`.`engineers` ()
93 ON DELETE NO ACTION
94 ON UPDATE NO ACTION,
95 CONSTRAINT `fk_constructions_engineers2`
96 FOREIGN KEY ()
97 REFERENCES `mydb`.`engineers` ()
98 ON DELETE NO ACTION
99 ON UPDATE NO ACTION)
100ENGINE = InnoDB;
101
102
103-- -----------------------------------------------------
104-- Table `mydb`.`files`
105-- -----------------------------------------------------
106CREATE TABLE IF NOT EXISTS `mydb`.`files` (
107 `id` INT NOT NULL,
108 `constructions_id` INT NOT NULL,
109 `data` DATE NULL,
110 `n_folha` INT NULL,
111 `prazo_decorrido` INT NULL,
112 `prazo_restante` INT NULL,
113 `tempo` INT NULL,
114 `servico_iniciado` TEXT NULL,
115 `servico_concluido` TEXT NULL,
116 `ocorrencias_diarias` TEXT NULL,
117 `observacoes_recomendacoes` TEXT NULL,
118 `mestre` INT NULL,
119 `pedreiro` INT NULL,
120 `carpinteiro` INT NULL,
121 `armador` INT NULL,
122 `eletricista` INT NULL,
123 `encanador` INT NULL,
124 `pintor` INT NULL,
125 `servente` INT NULL,
126 `serralheiro` INT NULL,
127 `contramestre` INT NULL,
128 `engcivil` INT NULL,
129 `assinatura_fiscal` TEXT NULL,
130 `assinatura_contratada` TEXT NULL,
131 PRIMARY KEY (`id`),
132 INDEX `fk_files_constructions1_idx` (`constructions_id` ASC) VISIBLE,
133 CONSTRAINT `fk_files_constructions1`
134 FOREIGN KEY (`constructions_id`)
135 REFERENCES `mydb`.`constructions` (`id`)
136 ON DELETE NO ACTION
137 ON UPDATE NO ACTION)
138ENGINE = InnoDB;
139
140
141SET SQL_MODE=@OLD_SQL_MODE;
142SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
143SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;