Tema: errno: 150
Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/04/2012, 05:03
caminventssa
 
Fecha de Ingreso: marzo-2012
Mensajes: 10
Antigüedad: 12 años, 1 mes
Puntos: 0
errno: 150

Tengo las tres siguientes tablas:

CREATE TABLE `clave` (
`clave` VARCHAR( 25 ) NOT NULL ,
`tipo` VARCHAR( 25 ) NOT NULL ,
PRIMARY KEY ( `clave` )
) ENGINE = innodb;

CREATE TABLE `metodo` (
`semilla` VARCHAR( 100 ) NOT NULL ,
`algoritmo` VARCHAR( 5 ) NOT NULL ,
PRIMARY KEY ( `semilla`,`algoritmo` )
) ENGINE = innodb;

REATE TABLE `clave_metodo` (
`clave` VARCHAR( 25 ) NOT NULL ,
`semilla` VARCHAR( 100 ) NOT NULL ,
`algoritmo` VARCHAR( 5 ) NOT NULL ,
PRIMARY KEY ( `clave`,`semilla`,`algoritmo` )
) ENGINE = innodb;

Al realizar las siguientes modificaciones, no me crea la segunda, me arroja el error (errno:150) Revise los tipos de datos: algoritmo.

ALTER TABLE `clave_metodo` ADD FOREIGN KEY (`semilla`) REFERENCES `proyecto`.`metodo` (`semilla`) ON DELETE CASCADE;

ALTER TABLE `clave_metodo` ADD FOREIGN KEY (`algoritmo`) REFERENCES `proyecto`.`metodo` (`algoritmo`) ON DELETE CASCADE;

Usan el mismo tipo de datos, mismo motor, misma codificación, he buscado por muchos sitios pero no encuentro la solución a mi problema. ¿Alquien sabe que les lo que puede pasar?