[Portugal] Criar coluna calcule a área em PostGIS automaticamente
Andre Mano
andre.s.mano gmail.com
Quinta-Feira, 2 de Abril de 2015 - 01:58:05 PDT
Ola Marco,
Para fazeres isso tens de implementar um trigger na tua base de dados.
Estes comandos deverao funcionar, apenas tens de mudar o nome dos campos:
-- Criar o trigger
CREATE OR REPLACE FUNCTION computing_area()
RETURNS TRIGGER AS
$BODY$
BEGIN
NEW.area := ROUND((st_area(NEW.geom))::numeric,2); RETURN
NEW;
END;
$BODY$
LANGUAGE 'plpgsql'
-- implementar o trigger
CREATE TRIGGER calculate_area
BEFORE INSERT OR UPDATE
ON landplot
FOR EACH ROW
EXECUTE PROCEDURE computing_area();
2015-04-02 10:47 GMT+02:00 <nmrcortes at gmail.com>:
>
> Quero criar uma coluna numa tabela (polígono) no PostGIS que calcule a
> área automaticamente e que a mantenha actualizada sempre que se altere a
> geometria do polígono no Qgis.
>
> Com o seguinte SQL:
> UPDATE "Parcela" SET AreaHectares=ST_AREA(geom)/10000;
> FROM
> "Parcela"
>
> Faz a actualização da área mas tenho que fazer o Update sempre que altero
> a geometria.
> Há alguma forma de fazer isto automaticamente?
>
> Obrigado
> Nuno Cortês
>
>
>
> _______________________________________________
> Portugal mailing list
> Portugal at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/portugal
>
--
..................................
André Mano
http://opussig.blogspot.com/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/portugal/attachments/20150402/67054797/attachment.html>
More information about the Portugal
mailing list