0
同じ外部キーを持つ2つの列を作成しようとしています。これはMySQLのエラーです。 ERROR同じ外部キーを持つ2つの列を作成する方法
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;
EDITここで1
私はJugador_idJugadorと私の2つのcolumsを参照したいテーブルPartido-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