No actualiza columnas en el disparador
Publicado por Actualizacion en Trigger (1 intervención) el 17/11/2013 19:49:31
Buenas tardes.
Tengo la siguiente tablaen Postgresql:
CREATE TABLE public.facturacion_secuencias (
id SERIAL,
num1 INTEGER NOT NULL,
num2 INTEGER NOT NULL,
total INTEGER,
CONSTRAINT facturacion_secuencias_pkey PRIMARY KEY(id)
)
WITH (oids = false);
CREATE TRIGGER facturacion_secuencias_tr
AFTER INSERT
ON public.facturacion_secuencias FOR EACH ROW
EXECUTE PROCEDURE public.f_sumar();
Como observan, esta posee un trigger a la funcion "f_sumar", la cual es la siguiente:
CREATE OR REPLACE FUNCTION public.f_sumar (
)
RETURNS trigger AS
$body$
BEGIN
NEW.total:= NEW.num1 + NEW.num2;
RETURN NEW;
END;
$body$
LANGUAGE 'plpgsql'
VOLATILE
CALLED ON NULL INPUT
SECURITY INVOKER
COST 100;
A pesar que parece sencilla la actualización dle campo TOTAL, esta no ocurre. No entiendo Por qué, si hace falta un parametro a configurar o que....
Espero su colaboración muchas gracias
Tengo la siguiente tablaen Postgresql:
CREATE TABLE public.facturacion_secuencias (
id SERIAL,
num1 INTEGER NOT NULL,
num2 INTEGER NOT NULL,
total INTEGER,
CONSTRAINT facturacion_secuencias_pkey PRIMARY KEY(id)
)
WITH (oids = false);
CREATE TRIGGER facturacion_secuencias_tr
AFTER INSERT
ON public.facturacion_secuencias FOR EACH ROW
EXECUTE PROCEDURE public.f_sumar();
Como observan, esta posee un trigger a la funcion "f_sumar", la cual es la siguiente:
CREATE OR REPLACE FUNCTION public.f_sumar (
)
RETURNS trigger AS
$body$
BEGIN
NEW.total:= NEW.num1 + NEW.num2;
RETURN NEW;
END;
$body$
LANGUAGE 'plpgsql'
VOLATILE
CALLED ON NULL INPUT
SECURITY INVOKER
COST 100;
A pesar que parece sencilla la actualización dle campo TOTAL, esta no ocurre. No entiendo Por qué, si hace falta un parametro a configurar o que....
Espero su colaboración muchas gracias
Valora esta pregunta
0