|    
			
				17/06/2006, 06:39
			
			
			  | 
  |   |  |  |  Fecha de Ingreso: junio-2006 
						Mensajes: 1
					 Antigüedad: 19 años, 4 meses Puntos: 0 |  | 
  |  Y que pasa cuando la integridad referencial debe ser establecida para dos campos?
 Es decir:
 
 Clientes
 :::::::::
 id_cliente
 id_entidad
 
 Ventas
 ::::::::
 id_cliente
 id_entidad
 
 Si hacemos un DELETE FROM clientes WHERE id_cliente = 2 AND id_entidad = 7 de clientes (y hay relacion ventas.id_cliente => clientes.id_cliente), nos borrara el cliente 2 de la entidad 7, pero nos borrara tambien de ventas todos las que tenga id_cliente =2 aunque sean de otras entidades.
 
 Enteder por entidad diferentes webs corriendo en una misma aplicacion.
 
 id_cliente
 id_entidad
 
 Es clave primaria en ambas tablas
 
 ALTER TABLE `ventas`
 ADD CONSTRAINT `ventas_id_cliente_id_entidad` FOREIGN KEY (`id_cliente`, `id_entidad`) REFERENCES `clientes` (`id_cliente`, `id_entidad`) ON DELETE CASCADE ON UPDATE CASCADE;
 
 Esto lo arreglaria.
 
 El mayor prblema es que phpmyadmin no puede establecer relaciones de varios campos de forma conjunta, solo 1 a 1 asi que toca hacerlo a mano. (Luego si editas Vista de Relaciones y guardas lo dejara correctamente con los dos campos)
   Última edición por liron23; 17/06/2006 a las 07:26
     |