Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Ayuda con un trigger

Estas en el tema de Ayuda con un trigger en el foro de Mysql en Foros del Web. Hola a toda la comunidad!! Bueno mi primera participacion y es una gran duda Bueno.... estoy haciendo el control de una tienda de zapatos, dicha ...
  #1 (permalink)  
Antiguo 01/02/2009, 21:04
 
Fecha de Ingreso: febrero-2009
Mensajes: 36
Antigüedad: 15 años, 2 meses
Puntos: 0
Ayuda con un trigger

Hola a toda la comunidad!!

Bueno mi primera participacion y es una gran duda

Bueno.... estoy haciendo el control de una tienda de zapatos, dicha tienda tiene varias sucursale y se desea controlar con una base de datos. Ya tengo la estructura de la base de datos, con un ejemplo q encontre en interntet pude terminar el trigger de facturacion, el cual disminuye la cantidad de existencia dependiendo de la cantidad que se encuentre en el detalle_pedido.

Aqui les pongo una imagen de mi base de datos


En mi base de datos tengo la tabla detalle_sucursal en la cual puedo almacenar los zapatos que posee cada sucursal, una regla seria que si el cod_zapato, id_sucursal no existe en la tabla detalle_sucursal que se llene con la informacion de pedido y detalle_pedido y si se encuentra el cod_zapato y id_sucursal en la tabla detalle_sucursal que solo se actualice la cantidad.

No se si me hago entender! pero solo quiero llenar de forma automatica esa tabla!!

Me pueden dar una mano?
  #2 (permalink)  
Antiguo 06/02/2009, 21:53
 
Fecha de Ingreso: febrero-2009
Mensajes: 36
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Ayuda con un trigger

Hola! les pongo mi tablas!!

tabla zapatos
cod_zapato(pk), tamano(pk) ,marca, existencia

Tabla sucursal
id_sucursal(pk), sucursal

tabla detalle_sucursal
cod_zapato(pk), tamano(pk), id_sucursal(pk), cantidad. Esta tabla esta relacionada con la tabla zapatos y la tabla sucursal.

tabla pedido
id_pedido(pk), id_sucursal, fecha_pedido. Esta tabla se relaciona con id_sucursal

detalle_pedido
id_pedido Esta tabla se relaciona con zapatos y pedido!
cod_zapato
tamano
cantidad

Ya poseo el trigger para disminuir la existencia dependiendo de los pedidos! pero lo q no me sale todavia es llenar la tabla detalle_su :hitcomp: con los datos q se ingresan en pedido (donde se toma el id_sucursal) y en detalle_pedido(en donde se toma el cod_zapato, el tamano y la cantidad) claro! q si las llaves ya se encuentran ingresadas que solo se actualice la cantidad!!
  #3 (permalink)  
Antiguo 06/02/2009, 21:55
 
Fecha de Ingreso: febrero-2009
Mensajes: 36
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Ayuda con un trigger

Les pongo el trigger el cual uso para disminuir los valors de cada existencia!! talvez se den una idea y me puedan ayudar!!

DELIMITER $$

DROP TRIGGER /*!50032 IF EXISTS */ `zapateria`.`disminuir_existencia`$$

CREATE
/*!50017 DEFINER = 'root'@'localhost' */
TRIGGER `disminuir_existencia` BEFORE INSERT ON `detalle_producto`
FOR EACH ROW BEGIN
declare ep int;

select producto.existencia into ep from producto
where producto.cod_producto = new.cod_producto;


if ep >= new.cantidad then
update producto set existencia = existencia - new.cantidad
where producto.cod_producto = new.cod_producto;

else
set new.id_venta = null;
end if;
END;
$$

DELIMITER ;

ahi esta el codigo!! ahora lo que deseo es agarrar el dato id_venta de la tabla pedido y cod_zapato, cantidad de la tabla detalle_pedido.

y con un if me supongo haria la validacion: si se encuentra el cod_zapato y id_sucursal que se actualice la cantidad, sino que haga un insert para poner los valores de cod_zapato, id_sucursal y cantidad!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:55.