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

trigger para validar datos de otra tabla diferente a la insercion de los datos.

Estas en el tema de trigger para validar datos de otra tabla diferente a la insercion de los datos. en el foro de PostgreSQL en Foros del Web. Hola, algo de ayuda.... tengo el siguiente trigger . CREATE TRIGGER validar_pic BEFORE UPDATE ON herramientas.pic FOR EACH ROW EXECUTE PROCEDURE herramientas."herramientas.guardar_pic"(); y la siguiente ...
  #1 (permalink)  
Antiguo 26/03/2011, 23:59
 
Fecha de Ingreso: noviembre-2004
Ubicación: Valle del cauca / Cali
Mensajes: 112
Antigüedad: 19 años, 4 meses
Puntos: 1
Pregunta trigger para validar datos de otra tabla diferente a la insercion de los datos.

Hola, algo de ayuda....

tengo el siguiente trigger .

CREATE TRIGGER validar_pic
BEFORE UPDATE
ON herramientas.pic
FOR EACH ROW
EXECUTE PROCEDURE herramientas."herramientas.guardar_pic"();

y la siguiente funcion

CREATE OR REPLACE FUNCTION herramientas."herramientas.guardar_pic"()
RETURNS trigger AS
$BODY$

DECLARE
dato text;
BEGIN
dato := TG_OP;
RAISE EXCEPTION 'instruccion %', dato ;

END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE
COST 100;
ALTER FUNCTION herramientas."herramientas.guardar_pic"() OWNER TO kerneladmin;

Cuando hago una insercion de datos, no me saca el exception, pero cuando hago el update si lo hace. Necesito que me saque el exception tanto para el UPDATE como para el INSERT.

Alguna idea de que estoy haciendo mal......
  #2 (permalink)  
Antiguo 28/03/2011, 06:49
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: trigger para validar datos de otra tabla diferente a la insercion de los d

Cita:
Cuando hago una insercion de datos, no me saca el exception, pero cuando hago el update si lo hace. Necesito que me saque el exception tanto para el UPDATE como para el INSERT.
Solo te funciona para el update por que asi lo tienes creado en el trigger.
Cita:
CREATE TRIGGER validar_pic
BEFORE UPDATE
ON herramientas.pic
FOR EACH ROW
EXECUTE PROCEDURE herramientas."herramientas.guardar_pic"();
Pruebalo así:
Código SQL:
Ver original
  1. CREATE TRIGGER validar_pic
  2. BEFORE UPDATE OR INSERT
  3. ON herramientas.pic
  4. FOR EACH ROW
  5. EXECUTE PROCEDURE herramientas."herramientas.guardar_pic"();

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming

Etiquetas: diferente, trigger, tablas
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 23:19.