Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/05/2011, 02:57
hamith
 
Fecha de Ingreso: abril-2011
Mensajes: 2
Antigüedad: 13 años
Puntos: 0
Exclamación error mysql SQL #1005 (errno 150)

Hola que tal, tengo un problema con mysql, y espero me puedan ayudar por favor, veran: estoy desarrollando un proyecto para la escuela en php y mysql, pero en una tabla necesito obtener dos campos obligatorios, numero de boleta y numero de libro, ambios campos los meto en la misma tabla porque van ligados, uno depende del otro por decirlo asi, pero ambos son de gran importancia, por lo que los dos serian llaves primarias, y esta "superclave" se enlaza a dos llaves foraneas, Numero_Libro y Numero_Boleta, pero me marca el siguiente error:

ERROR DE EJECUCION SQL #1005. respuesta de la base de datos
can´t create table '.\estacion_policias\infracciones.frm(errno:150)'

No se si mysql no soporta esto, o tengo error de sintaxis o que pueda estar pasando. Ambos en las dos tablas tienen el mismo tipo de dato, varchar(5) y manejo INNO DB para las dos.


CREATE DATABASE `Estacion_Policias` ;
USE `Estacion_Policias`;


-- -----------------------------------------------------
-- Table `Estacion_Policias`.`Boleta`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Estacion_Policias`.`Boleta` (
`NumeroBoleta` VARCHAR(5) NOT NULL ,
`NumeroLibro` VARCHAR(5) NOT NULL ,
PRIMARY KEY (`NumeroBoleta`, `NumeroLibro`) )
ENGINE = InnoDB;


-- -----------------------------------------------------
-- Table `Estacion_Policias`.`Infracciones`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `Estacion_Policias`.`Infracciones` (
`Folio` VARCHAR(15) NOT NULL ,
`Descripcion` VARCHAR(45) NOT NULL ,
`Numero_Boleta` VARCHAR(5) NOT NULL ,
`Numero_Libro` VARCHAR(5) NOT NULL ,
`Tipo_Libro` VARCHAR(45) NOT NULL ,
`Numero_Licencia_Chofer` INT NOT NULL ,
`Fecha` DATE NOT NULL ,
`Hora` TIME NOT NULL ,
`Calle` VARCHAR(45) NOT NULL ,
`Colonia` VARCHAR(45) NOT NULL ,
`Entre_calle1` VARCHAR(45) NOT NULL ,
`Entre_Calle2` VARCHAR(45) NULL ,
`Codigo_Localizacion` VARCHAR(4) NOT NULL ,
`Multa` INT NOT NULL ,
`Tipo_Multa` VARCHAR(45) NOT NULL ,
`Categoria_Multa` VARCHAR(45) NOT NULL ,
`Categoria_Infraccion` VARCHAR(45) NOT NULL ,
`Numero_Placa` VARCHAR(15) NOT NULL ,
`Num_Funcionario` VARCHAR(15) NOT NULL ,
PRIMARY KEY (`Folio`) ,
INDEX Codigo_Localizacion (`Codigo_Localizacion` ASC) ,
INDEX Numero_Placa (`Numero_Placa` ASC) ,
INDEX Numero_Licencia_Chofer (`Numero_Licencia_Chofer` ASC) ,
INDEX Categoria_Infraccion (`Categoria_Infraccion` ASC) ,
INDEX Num_Funcionario (`Num_Funcionario` ASC) ,
INDEX NumBoleta (`Numero_Boleta` ASC) ,
INDEX NumLibro (`Numero_Libro` ASC) ,
CONSTRAINT `Codigo_Localizacion`
FOREIGN KEY (`Codigo_Localizacion` )
REFERENCES `Estacion_Policias`.`Ciudades` (`idCiudad` )
ON DELETE CASCADE
ON UPDATE CASCADE,
CONSTRAINT `Numero_Placa`
FOREIGN KEY (`Numero_Placa` )
REFERENCES `Estacion_Policias`.`Automovil` (`Numero_placa` )
ON DELETE CASCADE
ON UPDATE CASCADE,
CONSTRAINT `Numero_Licencia_Chofer`
FOREIGN KEY (`Numero_Licencia_Chofer` )
REFERENCES `Estacion_Policias`.`Datos_conductor` (`Num_lic_chofer` )
ON DELETE CASCADE
ON UPDATE CASCADE,
CONSTRAINT `Categoria_Infraccion`
FOREIGN KEY (`Categoria_Infraccion` )
REFERENCES `Estacion_Policias`.`Categoria_infracciones` (`idCategoria_infraccion` )
ON DELETE CASCADE
ON UPDATE CASCADE,
CONSTRAINT `Num_Funcionario`
FOREIGN KEY (`Num_Funcionario` )
REFERENCES `Estacion_Policias`.`Datos_agente` (`Numero_Funcionario` )
ON DELETE CASCADE
ON UPDATE CASCADE,
CONSTRAINT `NumBoleta`
FOREIGN KEY (`Numero_Boleta` )
REFERENCES `Estacion_Policias`.`Boleta` (`NumeroBoleta` )
ON DELETE CASCADE
ON UPDATE CASCADE,
CONSTRAINT `NumLibro`
FOREIGN KEY (`Numero_Libro` )
REFERENCES `Estacion_Policias`.`Boleta` (`NumeroLibro` )
ON DELETE CASCADE
ON UPDATE CASCADE)
ENGINE = InnoDB;



Espero me puedan ayudar, de ante mano gracias