Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/01/2010, 23:07
Agrus
 
Fecha de Ingreso: septiembre-2009
Mensajes: 40
Antigüedad: 14 años, 7 meses
Puntos: 0
Problema con una relacion en Mysql, ayuda por favor

Buenas.

Estoy haciendo una aplicacion para llevar el control de un inventario pequeño, tengo una tabla para los proveedores, y una tabla para los tipos de productos que existen.

Mi problema radica en que cuando quiero ingresar un nuevo proveedor al sistema, este puede proveer mas de un tipo de producto pero en la practica no logro hacerlo, cree una FK en la tabla de proveedores para relacionarla con la tabla tipo productos pero aun asi no me funciona.

Asi va la tabla de proveedores:
Código:
CREATE TABLE `proveedor` (
  `id_proveedor` varchar(11) NOT NULL,
  `nombre_proveedor` text,
  `tipo_producto` varchar(12) DEFAULT NULL,
  `tlf_proveedor` text,
  `dir_proveedor` text,
  PRIMARY KEY (`id_proveedor`),
  KEY `FK_proveedor_referencia_tipoproductos` (`tipo_producto`),
  CONSTRAINT `FK_proveedor_referencia_tipoproductos` FOREIGN KEY (`tipo_producto`) REFERENCES `tipo_productos` (`id_tipo`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
Y asi va la tabla de tipo productos:
Código:
CREATE TABLE `tipo_productos` (
  `id_tipo` varchar(12) NOT NULL,
  `descripcion_tipo` text,
  PRIMARY KEY (`id_tipo`)
)
Y este es el error que me da cuando intento ingresar un nuevo proveedor en la tabla:
Código:
Cannot add or update a child row: a foreign key constraint fails (`hemodinamia`.`proveedor`, CONSTRAINT `FK_proveedor_referencia_tipoproductos` FOREIGN KEY (`tipo_producto`) REFERENCES `tipo_productos` (`id_tipo`))
Ayuda por favor :(