
01/09/2011, 15:10
|
 | | | Fecha de Ingreso: marzo-2011 Ubicación: Santiago de Cali, Colombia
Mensajes: 74
Antigüedad: 14 años Puntos: 16 | |
Problema con ON DELETE CASCADE en MySQL Hola,
Tengo una tabla que ya esta poblada con muchos registros, que almacena diferentes traducciones para un contenido.
la tabla es la siguiente:
CREATE TABLE `tblTraduccionSeccion` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`titulo` varchar(255) NOT NULL,
`descripcion` varchar(255) NOT NULL,
`contenido` text NOT NULL,
`title` varchar(255) NOT NULL,
`description` varchar(255) NOT NULL,
`keywords` varchar(255) NOT NULL,
`url` varchar(255) NOT NULL,
`idPag` int(11) NOT NULL,
`lang` enum('ES','EN') NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ;
Trato de poner una llave foranea con ON DELETE CASCADE para que cuando se elimine un contenido se eliminen tambien todas sus traducciones, pero me genera un error:
Error Code: 1005. Can't create table 'zoo.#sql-135_64' (errno: 150)
la consulta es la siguiente:
ALTER TABLE tblTraduccionSeccion
ADD CONSTRAINT `FK_SECCION`
FOREIGN KEY (`idPag` )
REFERENCES tblSeccion (`id` )
ON DELETE CASCADE
ON UPDATE CASCADE;
que puedo hacer?
que otra alternativa hay para poner esta restriccion?
muchas gracias.
-------------------------------------------------
solucionado,
una tabla estaba con MyISAM y la otra con InnoDB por eso no podia poner la llave.
Última edición por hmvr414; 01/09/2011 a las 15:46
Razón: solucionado
|