Hola
Tengo la siguiente duda,¿Cual es el equivalente de RAISE_APLICATION_ERROR en MySQL? ¿O como puedo programar excepciones de usuario?
CREATE OR REPLACE TRIGGER T_BAJAR_PRECIOS
BEFORE UPDATE OF PVP ON ARTICULOS
FOR EACH ROW
WHEN (NEW.PVP<OLD.PVP)
BEGIN
RAISE_APPLICATION_ERROR(-20002,'LOS PRECIOS NO SE PUEDEN BAJAR');
END;
y tengo otra duda,¿El "BEFORE UPDATE OF PVP" el "OF PVP" como se hace en MySQL, lo he buscado pero no lo he encontrado?
PD:Este script es de oracle.
Gracias de antemano
En MySQL 5.5 han metido SIGNAL, que es similar al raise_application_error:
http://dev.mysql.com/doc/refman/5.5/en/signal.html
Respecto al OF, en MySQL aparentemente no se puede, pero puedes ponerle un condicional para que sólo arranque cuando se cambie el valor en cuestión.
IF NEW.PVP <> OLD.PVP THEN
Aunque como ya lo tienes con:
WHEN (NEW.PVP<OLD.PVP)
Esto resultaría redundante e inútil en este caso. :-\