Soy nuevo en programación plpgsql.
Estoy un disparado. La idea de este disparador es que cada vez que realice un INSERT o UPDATE en una tabla, poder copiar los datos nuevos a otra tabla.
Sé que tengo mi store procedure bien definido, y mi trigger también funciona: A continuación muestro lo que he hecho:
-----------------------------------------------------------------------------------------------------------------------------
Código:
---------------------------------------------------------------------------------------------------------------------------CREATE OR REPLACE FUNCTION realizo_operacion() RETURNS TRIGGER AS $realizo_operacion$ DECLARE BEGIN --aqui coloco el query SELECT * FROM grey WHERE grey_id = 3; --Esta consulta trae 1 registro con 2 columnas. INSERT INTO prueba(prueba_id, prueba_nombre) VALUES ('INSERTO columna 1', 'INSERTO columna 2'); RETURN NULL; END; $realizo_operacion$ LANGUAGE plpgsql;
--------------------------------------------------------------------------------------------------------------------------
Código:
---------------------------------------------------------------------------------------------------------------------------CREATE TRIGGER realizo_operacion AFTER INSERT OR UPDATE OR DELETE ON grey FOR EACH ROW EXECUTE PROCEDURE realizo_operacion();
El ejemplo anterior es una simplificación del problema real. Este fue probado y funciona.
mi duda es la siguiente:
Cómo puedo obtener los datos de una consulta (Select) para utilizarlo en el query (Insert)???
lo que deseo es copiar los datos algunas de las columnas de la tabla donde esta el disparador a la otra. osea, copiar de una tabla a otra.
Gracias de antemano con la ayuda ofrecida.