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

Trigger para Actualizar Datos

Estas en el tema de Trigger para Actualizar Datos en el foro de PostgreSQL en Foros del Web. Hola a todos. Les agradeceria mucho si me pueden ayudar con el siguiente problema. Tengo una base de datos, con un campo como un tipo ...
  #1 (permalink)  
Antiguo 27/11/2012, 13:51
 
Fecha de Ingreso: noviembre-2012
Ubicación: Chile
Mensajes: 1
Antigüedad: 8 años, 10 meses
Puntos: 0
Pregunta Trigger para Actualizar Datos

Hola a todos.
Les agradeceria mucho si me pueden ayudar con el siguiente problema.

Tengo una base de datos, con un campo como un tipo id el cual con otra aplicacion lo utilizo para realizar procedimientos (respaldos de bases de datos etc).
El problema es el siguiente, necesito mediante un disparador , que cuando se haga un update a un registro de la base de datos, se cambie ese campo mencionado al valor 2. Pero el problema es que el disparador me cambia a todos los registros por el valor 2.

Creo que el problema es por el update. No es muy recomendable realizar update dentro de disparadores, pero no se me ocurre otra solucion.

Agradeceria mucho si me pueden ayudar.

Aca dejo el codigo:


CREATE OR REPLACE FUNCTION cambia_codigo() RETURNS TRIGGER AS $cambia_codigo$
BEGIN
IF (OLD.codigo_id = 0) THEN
UPDATE contratos set codigo_id=2 WHERE codigo_id=0;
END IF;
RETURN NULL;
END;
$cambia_codigo$LANGUAGE plpgsql;


CREATE TRIGGER cambia_codigo AFTER UPDATE ON contratos FOR EACH ROW
EXECUTE PROCEDURE cambia_codigo();


Muchas Gracias!

Etiquetas: disparador, disparadores, postgres, trigger
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 00:32.