0
동일한 외래 키로 두 개의 열을 만들려고합니다. 이것은 MySQL의 오류입니다. ERROR동일한 외래 키로 두 개의 열을 만드는 방법
errno: 150 “Foreign key constraint is incorrectly formed”
SCRIPT
CREATE TABLE IF NOT EXISTS `invictus`.`Votaciones` (
`idVotaciones` INT NOT NULL AUTO_INCREMENT,
`mvp` INT NOT NULL,
`idPartido-Jugador` INT NOT NULL,
`votante` INT NOT NULL,
PRIMARY KEY (`idVotaciones`),
INDEX `fk_Votaciones_Partido-Jugadores_idx` (`mvp` ASC, `idPartido-Jugador` ASC, `votante` ASC),
CONSTRAINT `fk_Votaciones_Partido-Jugadores`
FOREIGN KEY (`mvp` , `idPartido-Jugador` , `votante`)
REFERENCES `invictus`.`Partido-Jugadores` (`Jugador_idJugador` , `Equipos_Partido_idPartido` , `Jugador_idJugador`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
편집 여기에 1
내가 Jugador_idJugador내 두 colums를 참조 할 테이블 파르-Jugadores,
CREATE TABLE IF NOT EXISTS `invictus`.`Partido-Jugadores` (
`idPartido-Jugadores` INT NOT NULL AUTO_INCREMENT,
`Equipos_idEquipos` INT NOT NULL,
`Equipos_Partido_idPartido` INT NOT NULL,
`Equipos_Partido_fecha` DATETIME NOT NULL,
`Equipos_Partido_Grupo_idGrupo` INT NOT NULL,
`Equipos_nombreEquipo` VARCHAR(45) NOT NULL,
`Jugador_idJugador` INT NOT NULL,
PRIMARY KEY (`idPartido-Jugadores`, `Equipos_idEquipos`, `Equipos_Partido_idPartido`, `Equipos_Partido_fecha`, `Equipos_Partido_Grupo_idGrupo`, `Equipos_nombreEquipo`, `Jugador_idJugador`),
INDEX `fk_Partido-Jugadores_Equipos1_idx` (`Equipos_idEquipos` ASC, `Equipos_Partido_idPartido` ASC, `Equipos_Partido_fecha` ASC, `Equipos_Partido_Grupo_idGrupo` ASC, `Equipos_nombreEquipo` ASC),
INDEX `fk_Partido-Jugadores_Jugador1_idx` (`Jugador_idJugador` ASC),
CONSTRAINT `fk_Partido-Jugadores_Equipos1`
FOREIGN KEY (`Equipos_idEquipos` , `Equipos_Partido_idPartido` , `Equipos_Partido_fecha` , `Equipos_Partido_Grupo_idGrupo` , `Equipos_nombreEquipo`)
REFERENCES `invictus`.`Equipos` (`idEquipos` , `Partido_idPartido` , `Partido_fecha` , `Partido_Grupo_idGrupo` , `nombreEquipo`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_Partido-Jugadores_Jugador1`
FOREIGN KEY (`Jugador_idJugador`)
REFERENCES `invictus`.`Miembros-Grupo` (`Jugador_idJugador`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;
무엇이 문제인가? 감사합니다.
내 질문에 Partido-Jugadores를 추가했습니다. 내 테이블 * Votaciones *에서 열 * mvp * 및 * votante *는 Partido-Jugadores *에서 * Jugador_idJugador *를 참조하십시오. * Jugador_idJugador *는 기본 키 여야합니다? – arisolarpower
답장을 보내 주셔서 감사합니다. – arisolarpower