Hola,
Estoy haciendo el DAM online y el tema de PL/SQL me esta resultando duro cuando no tienes un profesor a quien preguntar dudas. El caso es q con los ejemplos minimos del temario no encuentro la forma de hacer el siguiente disparador q en principio deberia ser sencillo.
Si un agente esta en alguna oficina (campo number) el trigger tiene q hacer q el campo categoria sea = 2. Los campos de la tabla son: identificador, nombre, usuario, clav, habilidad, categoria, familia, oficina.
He intentado con la siguiente sintaxis pero me da error y no encuentro ninguna documentacion q me aclare. Alguien tiene esto claro?
Gracias!
CREATE OR REPLACE TRIGGER ofi_categoria
BEFORE INSERT OR UPDATE OF oficina
ON agentes
ON EACH ROW
WHEN (new.oficina IS NOT NULL)
Begin
IF (:new.oficina IS NOT NULL) THEN
INSERT INTO agentes(catgoria) VALUES ('2');
COMMIT;
END IF;
END ofi_categoria;
/