|
Es posible crear procedimientos almacenados y triggers en PostgreSQL usando varios lenguajes, entre otros PLpgSQL que es una ampliación a SQL. Presentamos un breve ejemplo de como mantener actualizado el promedio de los números de la tabla !Creación de tablas, función y trigger
CREATE TABLE numeros (num integer);
CREATE TABLE promedio (tabla VARCHAR(20), prom FLOAT);
INSERT INTO TABLE promedio VALUES ('numeros', '0');
CREATE LANGUAGE plpgsql;
CREATE OR REPLACE FUNCTION calcular_promedio()
RETURNS "trigger" AS
'
BEGIN
UPDATE promedio SET prom=(SELECT AVG(num) FROM numeros);
return NEW;
END;
'
LANGUAGE 'plpgsql' VOLATILE;
CREATE TRIGGER recalcula_promedio AFTER INSERT OR UPDATE OR DELETE ON
numeros FOR EACH STATEMENT
EXECUTE PROCEDURE calcular_promedio();
!Prueba de uso
INSERT INTO numeros VALUES ('5');
SELECT * FROM promedio ;
tabla | prom
---------+------
numeros | 5
(1 row)
Este escrito se dedica a Dios por su Belleza. Dominio público. 2009. vtamara@pasosdeJesus.org |