Ver Mensaje Individual
  #3 (permalink)  
Antiguo 06/03/2014, 04:52
Avatar de temerariomalaga
temerariomalaga
 
Fecha de Ingreso: marzo-2013
Ubicación: Londres
Mensajes: 156
Antigüedad: 11 años, 1 mes
Puntos: 9
Respuesta: Pasar clave foranea dos veces

Buenas he vuelto a retomar el tema del proyeto mysql y ya he salido del vaso de agua y ahora me ahogo en una bañera. Fuera bromas, dejo aquí el código de la creación de las tablas implicadas porque una vez que he hecho lo que me dijiste algo tiene que ir mal porque me sale el error 1215 Cannot add foreign key constraint. El problema de todo esto está en la tabla partidos que es la que hereda claves de un montón de tablas.
¿Alguna idea del por qué del error?
Código:
CREATE TABLE PABELLON(Codigo_pabellon INT NOT NULL, Nombre VARCHAR(30), Codigo_localidad INT(3), PRIMARY KEY (Codigo_pabellon));
CREATE TABLE JORNADA(Codigo_jornada INT NOT NULL AUTO_INCREMENT, Numero INT(2), Codigo_Competicion INT NOT NULL, PRIMARY KEY(Codigo_jornada));
CREATE TABLE EQUIPO(NIF VARCHAR(9) NOT NULL, Nombre VARCHAR(30), Direccion VARCHAR(20), Telefono VARCHAR(20), PRIMARY KEY (NIF));
CREATE TABLE EQUIPO_ARBITRAL(DNI VARCHAR(9), Licencia INT(3), Nombre VARCHAR(20), Apellidos VARCHAR(20), Email VARCHAR(20), Telefono INT(9), Cuenta INT(20), Cod_localidad INT(3), PRIMARY KEY (DNI));
CREATE TABLE PARTIDO(Codigo_Partido INT NOT NULL AUTO_INCREMENT PRIMARY KEY, EquipoA VARCHAR(9) NOT NULL, EquipoB VARCHAR(9) NOT NULL, Fecha DATE,
    Hora TIME, Codigo_pabellon INT NOT NULL, Codigo_jornada INT, ArbPrin VARCHAR(9),  ArbAux VARCHAR(9), Anotador VARCHAR(9), Crono VARCHAR(9), Op24 VARCHAR(9),
    INDEX (EquipoA, EquipoB), FOREIGN KEY (EquipoA, EquipoB) REFERENCES EQUIPO (NIF, NIF), INDEX (ArbPrin, ArbAux, Anotador, Crono, Op24), FOREIGN KEY (ArbPrin, ArbAux, Anotador, Crono, Op24) REFERENCES EQUIPO_ARBITRAL (DNI, DNI, DNI, DNI, DNI),
    INDEX (Codigo_pabellon), FOREIGN KEY (Codigo_pabellon) REFERENCES PABELLON (Codigo_pabellon), FOREIGN KEY (Codigo_jornada) REFERENCES JORNADA (Codigo_jornada));
__________________
Málaga Club de Fútbol: Memoria, Compromiso, Fe