Ver Mensaje Individual
  #6 (permalink)  
Antiguo 03/12/2015, 21:08
Avatar de el_cesar
el_cesar
 
Fecha de Ingreso: mayo-2001
Ubicación: Cali
Mensajes: 2.423
Antigüedad: 22 años, 10 meses
Puntos: 20
Respuesta: Cuando Utilizar relacion muchos a muchos

No me ha funcionado:

Siguiendo la recomendación hice lo siguiente:

Código MySQL:
Ver original
  1. CREATE TABLE IF NOT EXISTS `consicon_movimientos`.`usuario` (
  2.   `idusuario` INT NOT NULL AUTO_INCREMENT COMMENT '',
  3.   `nombre` VARCHAR(45) NOT NULL COMMENT '',
  4.   `apellidos` VARCHAR(45) NOT NULL COMMENT '',
  5.   `cargo` VARCHAR(45) NOT NULL COMMENT '',
  6.   `email` VARCHAR(45) NOT NULL COMMENT '',
  7.   `celuar` VARCHAR(45) NOT NULL COMMENT '',
  8.   `nombreusuario` VARCHAR(45) NOT NULL COMMENT '',
  9.   `contrasena` VARCHAR(45) NOT NULL COMMENT '',
  10.   `creado` DATETIME NULL COMMENT '',
  11.   PRIMARY KEY (`idusuario`)  COMMENT '')

y

Código MySQL:
Ver original
  1. CREATE TABLE IF NOT EXISTS `consicon_movimientos`.`perfl_usuario` (
  2.   `idperfl_usuario` INT NOT NULL AUTO_INCREMENT COMMENT '',
  3.   `perfil` VARCHAR(45) NOT NULL COMMENT '',
  4.   `usuario_idusuario` INT NOT NULL COMMENT '',
  5.   PRIMARY KEY (`idperfl_usuario`)  COMMENT '',
  6.   INDEX `fk_perfl_usuario_usuario1_idx` (`usuario_idusuario` ASC)  COMMENT '',
  7.   CONSTRAINT `fk_perfl_usuario_usuario1`
  8.     FOREIGN KEY (`usuario_idusuario`)
  9.     REFERENCES `consicon_movimientos`.`usuario` (`idusuario`)

y el insert lo estoy haciendo en php así:

Código PHP:
Ver original
  1. //Primero, insertamos los datos del perfil, que es el hijo y tiene la llave foranea.
  2.  
  3.     $inserta_perfil = "INSERT INTO perfl_usuario (perfil) values ('$perfil')";
  4.     $run_ip = mysql_query($inserta_perfil) or die (mysql_error());
  5.    
  6.     //Segundo Insertamos en la tabla usuario, que es el padre
  7.  
  8.     $inserta_usuario = "INSERT INTO usuario (nombre,apellidos,cargo,email,celuar,nombreusuario,contrasena,creado) values ('$nombres','$apellidos','$cargo','$email','$celular','$user','$pss','$fecha')";
  9.     $run_iu = mysql_query($inserta_usuario) or die ( mysql_error());

Le hice un echo a los insert y me muestra esto:

Código HTML:
Ver original
  1. INSERT INTO perfl_usuario (perfil) values ('0')
  2.  
  3. INSERT INTO usuario (nombre,apellidos,cargo,email,celuar,nombreusuario,contrasena,creado) values ('Cesar Augusto','Jaramillo Contreras','Developer','[email protected]','3215425611','cejarcon','f587695dba25e8b5795fa785fafd9410','2015/12/03 10:05:15')

Segun esto, el insert está bien, sin embargo, el error que me dá es este
Cita:
Cannot add or update a child row: a foreign key constraint fails (`consicon_movimientos`.`perfl_usuario`, CONSTRAINT `fk_perfl_usuario_usuario1` FOREIGN KEY (`usuario_idusuario`) REFERENCES `usuario` (`idusuario`) ON DELETE CASCADE ON UPDATE CASCADE)
Y Efectivamente no me inserta ningun registro.
__________________
Say no more.......