Foros del Web » Programando para Internet » PHP »

Consulta errno: 150

Estas en el tema de Consulta errno: 150 en el foro de PHP en Foros del Web. Estoy creando una aplicacion web y ya la tengo terminada xro me fallan las foreign key Pongo el codigo, en las consultas del foreign key ...
  #1 (permalink)  
Antiguo 29/05/2012, 14:19
 
Fecha de Ingreso: abril-2012
Mensajes: 42
Antigüedad: 12 años, 6 meses
Puntos: 1
Consulta errno: 150

Estoy creando una aplicacion web y ya la tengo terminada xro me fallan las foreign key
Pongo el codigo, en las consultas del foreign key me da este error y no entiendo porque.
Las consultas de las foreign key estan al final del codigo, las marco en negrita

La descripción del error es: Can't create table 'gestionPlantilla.#sql-ac7_ee' (errno: 150)
La descripción del error es: Can't create table 'gestionPlantilla.#sql-ac7_ee' (errno: 150)
Consulta con problema errno: 150URGENTE
<?php

// llamar al script usar_gestion para conectarse a la tabla gestionPlantilla
require("conexion.php");

// Creamos las tablas de la base de datos guardandola en una variable
// PLANTILLA
$consultaPlantilla= "CREATE TABLE IF NOT EXISTS plantilla";
$consultaPlantilla.= "( IDPlantilla char(5) not null,";
$consultaPlantilla.= "Nombre char(20) not null,";
$consultaPlantilla.= "Categoria char(20) not null,";
$consultaPlantilla.= "PRIMARY KEY(IDPlantilla) )";
// Se ejecuta la consulta.
$hacerConsulta=mysql_query ($consultaPlantilla, $conectado);
// Se recupera información sobre el error producido.
$tipoError=mysql_error();
// Se muestra lo que tenemos acerca del error.
echo ("La descripción del error es: <b>$tipoError</b><br>");

// JUGADORES
$consultaJugador= "CREATE TABLE IF NOT EXISTS jugadores";
$consultaJugador.= "( IDJugador int auto_increment,";
$consultaJugador.= "NombreJugador char(10) ,";
$consultaJugador.= "Apellidos char(10) ,";
$consultaJugador.= "FechaNacimiento date ,";
$consultaJugador.= "Posicion char(10) ,";
$consultaJugador.= "Dorsal int ,";
$consultaJugador.= "Situacion enum('Lesionado','Activo'),";
$consultaJugador.= "Antiguedad int ,";
$consultaJugador.= "PRIMARY KEY(IDJugador,NombreJugador) )";
// Se ejecuta la consulta.
$hacerConsulta=mysql_query ($consultaJugador, $conectado);
// Se recupera información sobre el error producido.
$tipoError=mysql_error();
// Se muestra lo que tenemos acerca del error.
echo ("La descripción del error es: <b>$tipoError</b><br>");

// CUERPOTECNICO
$consultaCT= "CREATE TABLE IF NOT EXISTS cuerpoTecnico";
$consultaCT.= "( IDEmpleado int auto_increment,";
$consultaCT.= "NombreTrabajador char(10) ,";
$consultaCT.= "Apellidos char(10),";
$consultaCT.= "FechaNacimiento date ,";
$consultaCT.= "PuestoTrabajo char(20),";
$consultaCT.="PRIMARY KEY(IDEmpleado,NombreTrabajador) )";
// Se ejecuta la consulta.
$hacerConsulta=mysql_query ($consultaCT, $conectado);
// Se recupera información sobre el error producido.
$tipoError=mysql_error();
// Se muestra lo que tenemos acerca del error.
echo ("La descripción del error es: <b>$tipoError</b><br>");

// CITA
$consultaCita= "CREATE TABLE IF NOT EXISTS cita";
$consultaCita.= "( CodigoCita int auto_increment,";
$consultaCita.= "Dia date,";
$consultaCita.= "Hora time ,";
$consultaCita.= "NombreJugador char(10) ,";
$consultaCita.= "NombreTrabajador char(10) ,";
$consultaCita.= "Asunto char(25),";
$consultaCita.= "PRIMARY KEY(CodigoCita))";
// Se ejecuta la consulta.
$hacerConsulta=mysql_query ($consultaCita, $conectado);
// Se recupera información sobre el error producido.
$tipoError=mysql_error();
// Se muestra lo que tenemos acerca del error.
echo ("La descripción del error es: <b>$tipoError</b><br>");

//Se crean las foreign key
$consulta= "ALTER TABLE cita ADD CONSTRAINT citaJug FOREIGN KEY (NombreJugador)
REFERENCES jugadores (NombreJugador) ON DELETE SET NULL";
// Se ejecuta la consulta.
$hacerConsulta=mysql_query ($consulta, $conectado);

$tipoError=mysql_error();
// Se muestra lo que tenemos acerca del error.
echo ("La descripción del error es: <b>$tipoError</b><br>");

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

// Se ejecuta la consulta.
$hacerConsulta=mysql_query ($consulta, $conectado);

$tipoError=mysql_error();
// Se muestra lo que tenemos acerca del error.
echo ("La descripción del error es: <b>$tipoError</b><br>");

?>
  #2 (permalink)  
Antiguo 29/05/2012, 14:21
 
Fecha de Ingreso: abril-2012
Mensajes: 42
Antigüedad: 12 años, 6 meses
Puntos: 1
Respuesta: Consulta errno: 150

En el conexion.php ya creo la base de datos y me conecto al servidor !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Etiquetas: 150, errno, sql, tabla, variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:18.