CREATE OR REPLACE FUNCTION public.f_trg_tmp_wal_compress()
RETURNS trigger
LANGUAGE plpgsql
AS $function$
DECLARE
VN_COUNT INTEGER;
BEGIN
--语句级触发的不处理
IF TG_LEVEL = 'STATEMENT' THEN
RETURN NULL;
END IF;
--BEFORE触发的不处理
IF TG_WHEN = 'BEFORE' THEN
RETURN NULL;
END IF;
--DELETE 操作的不处理
IF TG_OP in ('DELETE') THEN
RETURN NULL;
END IF;
if lower(TG_RELNAME) in ('tmp_wal_compress') then
RAISE NOTICE 'tmp_wal_compress.lastupdatetime begin [%]',NEW.id ;
update public.tmp_wal_compress
set lastupdatetime = now()
where id=NEW.id
;
end if;
RETURN NULL;
EXCEPTION WHEN OTHERS THEN
RAISE NOTICE 'tmp_wal_compress.lastupdatetime error [%]%', SQLSTATE, SQLERRM;
END;
$function$
触发器
create trigger trg_tmp_wal_compress_upd
after insert or delete or update on public.tmp_wal_compress
for each row execute procedure f_trg_tmp_wal_compress();