From: | Aracelly Collazos <aracelly(dot)ta(dot)c(at)gmail(dot)com> |
---|---|
To: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Trigger con Foreign Data Wrapper |
Date: | 2014-02-24 21:30:45 |
Message-ID: | CAKeMKUi+Mg_LWii_Hav0gvYE2zQyQLVtyYTBTD8Shpfp_0bEdA@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Tengo 2 tablas similares, con algunos campos iguales, en dos bases de datos
diferentes, necesito que esten sincronizadas, es decir que si realizo algun
cambio en la tabla A de la BD A, estos cambios tambien se realicen en la
Tabla B de la BD B, para esto cree triggers After Update en ambas tablas, y
su procedimiento es el siguiente:
CREATE OR REPLACE FUNCTION t_usuario()
RETURNS trigger AS
$BODY$
DECLARE
BEGIN
UPDATE usuario_web_f set password=new.clave where username=new.nombre;
RETURN new;
EXCEPTION WHEN OTHERS THEN RAISE NOTICE 'SQL ERROR: %', SQLERRM;
END;
$BODY$
donde usuario_web_f es una tabla foranea que hace referencia a otra base de
datos, probe los triggers por separado y funcionan correctamente, el
problema surge cuando uso cada trigger en su tabla correspondiente, me sale
el siguiente error:
NOTICE: SQL ERROR: la ejecución alcanzó el fin del procedimiento disparador
sin encontrar RETURN
ERROR: la ejecución alcanzó el fin del procedimiento disparador sin
encontrar RETURN
CONTEXTO: función PL/pgSQL t_usuario()
Quisiera saber que es lo que pasa y si tal vez debo usar otra opción para
lograr mantener sincronizadas mis tablas. Muchas gracias de antemano!
--
Saludos
Aracelly
From | Date | Subject | |
---|---|---|---|
Next Message | Gilberto Castillo | 2014-02-24 22:07:49 | Re: Trigger con Foreign Data Wrapper |
Previous Message | Alvaro Herrera | 2014-02-21 19:42:41 | Re: Problema con dblink |