Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/12/2013, 06:41
dark0wolf
 
Fecha de Ingreso: julio-2013
Mensajes: 12
Antigüedad: 10 años, 9 meses
Puntos: 0
TRIGGER (sintaxis mysql)

Buenas,

Veréis siempre hice triggers en developer y ahora que estoy en mysql es un poco lioso para mi.. estuve mirando por inet triggers en mysql pero no conseguí hacerlo funcionar

Seríais tan amables de decirme que debo cambiar en cuanto a la sintaxis? en ora me funciona perfectamente

Dejo el trigger (es comprobación de stock y si hay lo modifica)
Código SQL:
Ver original
  1. --------------------------------------------------
  2. CREATE OR REPLACE
  3. TRIGGER TR_productos_stock
  4. BEFORE INSERT ON pedido
  5. FOR EACH ROW
  6.  
  7.  
  8. DECLARE
  9.  
  10. v_stock NUMBER(5,0);
  11.  
  12.  
  13. BEGIN
  14.  
  15. SELECT  stock INTO ( v_stock) FROM producto
  16. WHERE producto.id_producto=:NEW.id_producto;
  17.  
  18.  
  19.  
  20. IF v_stock>:NEW.gramos
  21. THEN RAISE_APPLICATION_ERROR (-20234, 'No hay stock disponible');
  22.  
  23. ELSE
  24.  
  25. UPDATE PRODUCTO SET stock= stock-:NEW.gramos  
  26. WHERE producto.id_producto=:NEW.id_producto;
  27.  
  28. END IF;
  29.  
  30. END;
  31.  
  32. ------------------------------------------

Gracias por adelantado! A ver si alguien puede ayudarme =)

Saludos!

Última edición por gnzsoloyo; 06/12/2013 a las 07:10