Hallo!
Ich habe nun eine Lösung für eine automatische Flächenberechnung in PostGIS. Diese automatische Berechnung wird in anderen GIS-Produkten angeboten und kann den Umstieg aus PostGIS eventuell ein bisschen angenehmer machen.
Gruß,Code:CREATE OR REPLACE FUNCTION calc_area() RETURNS "trigger" AS $BODY$ BEGIN -- Aktualisiert bei derjenigen Zeile, bei der etwas geändert (UPDATE) bzw. -- eingefügt (INSERT) wird die Spalte flaeche_qm und flaeche_ha NEW.flaeche_qm = st_area(NEW.geometry); NEW.flaeche_ha = NEW.flaeche_qm/10000.; RETURN NEW; END; $BODY$ LANGUAGE 'plpgsql' VOLATILE; ALTER FUNCTION calc_area() OWNER TO postgres; CREATE TRIGGER test_calc_area -- Wichtig ist, dass der TRIGGER BEFORE und -- nicht AFTER UPDATE OR INSERT geschaltet wird! BEFORE INSERT OR UPDATE ON test FOR EACH ROW EXECUTE PROCEDURE calc_area();
Johannes
Links: Tobias Bauer - IT- und Funkdienstleistungen - Bilderrahmen-kaufen.de - Der Onlineshop für Bilderrahmen & Fotorahmen - Funkforum
Lesezeichen