Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » PostgreSQL »

problemas para actualizar tabla desde una Function

Estas en el tema de problemas para actualizar tabla desde una Function en el foro de PostgreSQL en Foros del Web. Saludos Tengo la siguiente function: Código: CREATE FUNCTION registrar_pasaje_viatico() RETURNS "trigger" AS $$BEGIN IF (NEW.pasaje_aereo = 'true') THEN UPDATE solicitudpasaje SET codigo_solicitud_viatico = NEW.codigo_solicitud WHERE ...
  #1 (permalink)  
Antiguo 08/05/2009, 09:49
 
Fecha de Ingreso: agosto-2005
Ubicación: Mérida, Venezuela
Mensajes: 732
Antigüedad: 18 años, 8 meses
Puntos: 7
problemas para actualizar tabla desde una Function

Saludos

Tengo la siguiente function:
Código:
CREATE FUNCTION registrar_pasaje_viatico() RETURNS "trigger"
    AS $$BEGIN

        IF (NEW.pasaje_aereo = 'true') THEN
            UPDATE solicitudpasaje SET codigo_solicitud_viatico = NEW.codigo_solicitud WHERE codigo_solicitud = NEW."codigo_solicitud";
            RETURN new;
--         ELSIF (NEW.pasaje_aereo = 'false') THEN
--             UPDATE solicitudpasaje SET codigo_solicitud_viatico = NULL WHERE codigo_solicitud = NEW."codigo_solicitud";
--             RETURN new;
        ELSIF (OLD.pasaje_aereo = 'true') THEN
            UPDATE solicitudpasaje SET codigo_solicitud_viatico = OLD.codigo_solicitud WHERE codigo_solicitud = OLD."codigo_solicitud";
            RETURN old;
        ELSIF (OLD.pasaje_aereo = 'false') THEN
            UPDATE solicitudpasaje SET codigo_solicitud_viatico = NULL WHERE codigo_solicitud = OLD."codigo_solicitud";
            RETURN old;
        END IF;

    END;
$$
    LANGUAGE plpgsql;
Que se ejecuta con un triggert.

El asunto es, que cuando se inserta un registro nuevo, sí el campo pasaje_aereo se actualiza en la tabla solicitudpasaje tal como está en la función. Pero... sí se actualiza el campo pasaje_aereo no he logrado que se ejecute la respectiva parte de la función

Ideas?
__________________
Gracias de todas todas
-----
Linux!
  #2 (permalink)  
Antiguo 11/05/2009, 10:07
Avatar de Beuses  
Fecha de Ingreso: marzo-2009
Ubicación: Maracaibo
Mensajes: 132
Antigüedad: 15 años, 1 mes
Puntos: 5
Pregunta Respuesta: problemas para actualizar tabla desde una Function

Pienso que lo que te falta es donde compares si el valor del campo que vas a actualizar es igual o diferente al que ya tienes almacenado para que si es diferente lo cambie... :S
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:06.