Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/06/2012, 10:28
jediap
 
Fecha de Ingreso: abril-2012
Mensajes: 42
Antigüedad: 12 años, 4 meses
Puntos: 1
Problema con Foreign Key

Tengo un problema con mis dos foreign como he dicho en el titulo y es la primera vez que me da este error: Can't create table 'gestionPlantilla.#sql-1ba6_31' (errno: 150)

Tengo ya creada la base de la aplicación web en php pero me falla las foreign key de mi base de datos para esa aplicación web.

Me imagino que la tabla cita se tendrá que dividir en citaJugador y citaTrabajador por ejemplo, pero antes de intentarlo quiero ver los consejos de otras personas que saben mas que yo.

Una cosa e cogido el código directamente de mi script php, si veis alguna coma, punto y coma, " de mas es porque se me ha pasado borrarla, no me dado cuenta

MUCHAS GRACIAS

PONGO EL CÓDIGO:

CREATE DATABASE gestionPlantilla;
USE gestionPlantilla;


CREATE TABLE plantilla
( IDPlantilla char(5) not null,
Nombre char(20) not null,
Categoria char(20) not null,
PRIMARY KEY(IDPlantilla) );

CREATE TABLE jugadores
( IDJugador int auto_increment,
NombreJugador char(10) ,
Apellidos char(10) ,
FechaNacimiento date ,
Posicion char(10) ,
Dorsal int ,
Situacion enum('Lesionado','Activo'),
Antiguedad int ,
PRIMARY KEY(IDJugador) );

CREATE TABLE cuerpoTecnico
IDEmpleado int auto_increment,
NombreTrabajador char(10) ,
Apellidos char(10),
FechaNacimiento date ,
PuestoTrabajo char(20),
PRIMARY KEY(IDEmpleado) );

CREATE TABLE cita
( CodigoCita int auto_increment,
Dia date,
Hora time ,
NombreJugador char(10) ,
NombreTrabajador char(10) ,
$Asunto char(25),
$PRIMARY KEY(CodigoCita));

ALTER TABLE cita ADD CONSTRAINT citaJug FOREIGN KEY (NombreJugador)
REFERENCES jugadores (NombreJugador) ON DELETE SET NULL;

ALTER TABLE cita ADD CONSTRAINT citaCuer FOREIGN KEY (NombreTrabajador)
REFERENCES cuerpoTecnico (NombreTrabajador) ON DELETE SET NULL;