· 9 years ago · Dec 23, 2016, 02:44 AM
1-- -----------------------------------------------------
2 -- Table `testeboletim`.`tipo_usuario`
3 -- -----------------------------------------------------
4 CREATE TABLE IF NOT EXISTS `testeboletim`.`tipo_usuario` (
5 `idtipo_usuario` INT NOT NULL AUTO_INCREMENT,
6 `funcao` VARCHAR(45) NULL,
7 PRIMARY KEY (`idtipo_usuario`))
8 ENGINE = InnoDB;
9
10
11 -- -----------------------------------------------------
12 -- Table `testeboletim`.`usuario`
13 -- -----------------------------------------------------
14 CREATE TABLE IF NOT EXISTS `testeboletim`.`usuario` (
15 `idusuario` INT NOT NULL AUTO_INCREMENT,
16 `nome` VARCHAR(45) NULL,
17 `cpf` VARCHAR(20) NULL,
18 `data_nasc` DATE NULL,
19 `telefone` VARCHAR(20) NULL,
20 `celular` VARCHAR(20) NULL,
21 `email` VARCHAR(45) NULL,
22 `tipo_usuario_idtipo_usuario` INT NOT NULL,
23 PRIMARY KEY (`idusuario`, `tipo_usuario_idtipo_usuario`),
24 INDEX `fk_usuario_tipo_usuario_idx` (`tipo_usuario_idtipo_usuario` ASC),
25 CONSTRAINT `fk_usuario_tipo_usuario`
26 FOREIGN KEY (`tipo_usuario_idtipo_usuario`)
27 REFERENCES `testeboletim`.`tipo_usuario` (`idtipo_usuario`)
28 ON DELETE NO ACTION
29 ON UPDATE NO ACTION)
30 ENGINE = InnoDB;
31
32
33 -- -----------------------------------------------------
34 -- Table `testeboletim`.`aluno`
35 -- -----------------------------------------------------
36 CREATE TABLE IF NOT EXISTS `testeboletim`.`aluno` (
37 `idaluno` INT NOT NULL AUTO_INCREMENT,
38 `usuario_idusuario` INT NOT NULL,
39 `usuario_tipo_usuario_idtipo_usuario` INT NOT NULL,
40 PRIMARY KEY (`idaluno`, `usuario_idusuario`, `usuario_tipo_usuario_idtipo_usuario`),
41 INDEX `fk_aluno_usuario1_idx` (`usuario_idusuario` ASC, `usuario_tipo_usuario_idtipo_usuario` ASC),
42 CONSTRAINT `fk_aluno_usuario1`
43 FOREIGN KEY (`usuario_idusuario` , `usuario_tipo_usuario_idtipo_usuario`)
44 REFERENCES `testeboletim`.`usuario` (`idusuario` , `tipo_usuario_idtipo_usuario`)
45 ON DELETE NO ACTION
46 ON UPDATE NO ACTION)
47 ENGINE = InnoDB;
48
49
50 -- -----------------------------------------------------
51 -- Table `testeboletim`.`responsavel`
52 -- -----------------------------------------------------
53 CREATE TABLE IF NOT EXISTS `testeboletim`.`responsavel` (
54 `idresponsavel` INT NOT NULL AUTO_INCREMENT,
55 `usuario_idusuario` INT NOT NULL,
56 `usuario_tipo_usuario_idtipo_usuario` INT NOT NULL,
57 PRIMARY KEY (`idresponsavel`, `usuario_idusuario`, `usuario_tipo_usuario_idtipo_usuario`),
58 INDEX `fk_responsavel_usuario1_idx` (`usuario_idusuario` ASC, `usuario_tipo_usuario_idtipo_usuario` ASC),
59 CONSTRAINT `fk_responsavel_usuario1`
60 FOREIGN KEY (`usuario_idusuario` , `usuario_tipo_usuario_idtipo_usuario`)
61 REFERENCES `testeboletim`.`usuario` (`idusuario` , `tipo_usuario_idtipo_usuario`)
62 ON DELETE NO ACTION
63 ON UPDATE NO ACTION)
64 ENGINE = InnoDB;
65
66
67 -- -----------------------------------------------------
68 -- Table `testeboletim`.`aluno_has_responsavel`
69 -- -----------------------------------------------------
70 CREATE TABLE IF NOT EXISTS `testeboletim`.`aluno_has_responsavel` (
71 `aluno_idaluno` INT NOT NULL,
72 `aluno_usuario_idusuario` INT NOT NULL,
73 `responsavel_idresponsavel` INT NOT NULL,
74 `responsavel_usuario_idusuario` INT NOT NULL,
75 PRIMARY KEY (`aluno_idaluno`, `aluno_usuario_idusuario`, `responsavel_idresponsavel`, `responsavel_usuario_idusuario`),
76 INDEX `fk_aluno_has_responsavel_responsavel1_idx` (`responsavel_idresponsavel` ASC, `responsavel_usuario_idusuario` ASC),
77 INDEX `fk_aluno_has_responsavel_aluno1_idx` (`aluno_idaluno` ASC, `aluno_usuario_idusuario` ASC),
78 CONSTRAINT `fk_aluno_has_responsavel_aluno1`
79 FOREIGN KEY (`aluno_idaluno` , `aluno_usuario_idusuario`)
80 REFERENCES `testeboletim`.`aluno` (`idaluno` , `usuario_idusuario`)
81 ON DELETE NO ACTION
82 ON UPDATE NO ACTION,
83 CONSTRAINT `fk_aluno_has_responsavel_responsavel1`
84 FOREIGN KEY (`responsavel_idresponsavel` , `responsavel_usuario_idusuario`)
85 REFERENCES `testeboletim`.`responsavel` (`idresponsavel` , `usuario_idusuario`)
86 ON DELETE NO ACTION
87 ON UPDATE NO ACTION)
88 ENGINE = InnoDB;
89
90
91 SET SQL_MODE=@OLD_SQL_MODE;
92 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
93 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;