Hola amigos.

Estoy tratando de hacer un trigger que en la inserción o la actualización de
una tabla me ejecute una función pero al hacer insert o update me da el
error:

límite de profundidad de stack alcanzado

ahora no me doy cuenta de qué es lo que estoy haciendo mal, espero que
alguien me pueda decir.

 

El código es el siguiente:

 

CREATE OR REPLACE FUNCTION actualizar_estado()

  RETURNS trigger AS

  

$BODY$

declare cadena character varying(500);

  BEGIN

  cadena = '';

 

  select * into cadena from concatenar_nombre_estado(NEW.id);

  update nmestado set concatenado = cadena where id=NEW.id;

 

    RETURN NEW;

  END;

$BODY$

  LANGUAGE 'plpgsql' VOLATILE

  COST 100;

ALTER FUNCTION actualizar_estado() OWNER TO postgres;

 

CREATE TRIGGER ti_nmestado

  AFTER INSERT or UPDATE

  ON nmestado

  FOR EACH ROW

  EXECUTE PROCEDURE actualizar_estado();

 

Saludos,

Ing. Esneiker Enriquez Cabrera
      Esp. B en Ciencias Informáticas

Desoft en Ciego de Ávila. Joaquín de Aguero esq. Calle 2. Ciego de Ávila.
Cuba.
Telf.: 53 33 22 8971, email.:  <mailto:eenriq...@cav.desoft.cu>
eenriq...@cav.desoft.cu

 

Responder a