SQL Server - Trigger restar Stock MySQL

 
Vista:
sin imagen de perfil
Val: 1
Ha aumentado su posición en 30 puestos en SQL Server (en relación al último mes)
Gráfica de SQL Server

Trigger restar Stock MySQL

Publicado por RodrigoL (1 intervención) el 23/01/2019 15:22:27
La estructura de la base de datos es la siguiente:
HYe63zR

Se pide crear un trigger que al crear un pedido descuente el número de unidades del pedido del stock de la tabla artículos.

Mi código es el siguiente:

DELIMITER $$
CREATE TRIGGER restar_stock
AFTER INSERT ON pedidos
FOR EACH ROW
BEGIN
UPDATE articulos NATURAL JOIN pedidos
SET articulos.stock = articulos.stock - pedidos.unidades;
END$$
DELIMITER ;

El código como lo he elaborado no funciona, ya que actualiza el campo "stock" de todos los registros que hay en la tabla.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

Trigger restar Stock MySQL

Publicado por Isaias (4558 intervenciones) el 23/01/2019 17:24:48
Estas en un foro de SQL SERVER de MIcrosoft, pero conociendo los TRIGGERS, debes hacer mencion de tus tablas TEMPORALES que crea el trigger en una accion de INSERT y no veo en tu codigo dichas tablas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Leonardo Daniel A.
Val: 98
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

Trigger restar Stock MySQL

Publicado por Leonardo Daniel A. (48 intervenciones) el 29/01/2019 00:46:53
Creo que no deberia ser con trigger.. que tal si hay una falla al afectar por ejemplo el detalle de una factura de compra.. y al actualizar el stock ocurre una falla... debes cancelar la transaccion.. o actualizas todo o no actualizas nada
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar