0
I’m trying to create a table called Disciplina
, however I am not getting on account of foreign keys. I’ve checked it over and over and I can’t identify the mistake, if you can help me, I’d appreciate it.
CREATE TABLE `Curso` (
`idCurso` INT NOT NULL auto_increment,
`nomeCurso` VARCHAR(45),
`tipoCurso` VARCHAR(45),
PRIMARY KEY (`idCurso`))
ENGINE = InnoDB;
CREATE TABLE `Matriz` (
`Curso_idCurso` INT NOT NULL,
`anoInicio` INT NOT NULL,
`anoFim` INT NOT NULL,
`status` TINYINT NOT NULL,
`tituloMatriz` VARCHAR(45) NOT NULL,
`Disciplina_codDisciplina` VARCHAR(15) NOT NULL,
PRIMARY KEY (`Curso_idCurso`, `anoInicio`),
INDEX `fk_Matriz_Curso1_idx` (`Curso_idCurso` ASC),
CONSTRAINT `fk_Matriz_Curso1`
FOREIGN KEY (`Curso_idCurso`)
REFERENCES `Curso` (`idCurso`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
CREATE TABLE `Disciplina` (
`codDisciplina` VARCHAR(15) NOT NULL,
`nome` VARCHAR(45) NOT NULL,
`corrente` TINYINT NOT NULL,
`Matriz_anoInicio` INT NOT NULL,
`Matriz_idCurso` INT NOT NULL,
PRIMARY KEY (`codDisciplina`, `Matriz_anoInicio`,`Matriz_idCurso`),
FOREIGN KEY (`Matriz_idCurso`)
REFERENCES `Matriz` (`Curso_idCurso`),
FOREIGN KEY (`Matriz_anoInicio`)
REFERENCES `Matriz` (`anoInicio`))
ENGINE = InnoDB;