[Portugal] Criar coluna calcule a área em PostGIS automaticamente

Nuno Cortês nmrcortes live.com.pt
Quinta-Feira, 2 de Abril de 2015 - 04:15:34 PDT


Obrigado a Todos


Já esta a funcionar.


Abraço

Nuno Cortês






Enviado de Correio do Windows





De: Andre Mano
Enviada: ‎quinta-feira‎, ‎2‎ de ‎abril‎ de ‎2015 ‎09‎:‎58
Para: portugal  lists.osgeo.org







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  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  lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/portugal



-- 

..................................
André Mano
http://opussig.blogspot.com/
-------------- próxima parte ----------
Um anexo em HTML foi limpo...
URL: <http://lists.osgeo.org/pipermail/portugal/attachments/20150402/55d3a584/attachment.html>
-------------- próxima parte ----------
_______________________________________________
Portugal mailing list
Portugal  lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/portugal


More information about the Portugal mailing list