[QGIS-it-user] Spatialite e Triggers

Falz falcerisimone a inwind.it
Mer 15 Nov 2017 09:02:50 PST


Ciao a tutti,
desidero condividere con voi alcuni cenni sull'uso dei Triggers, ovvero dei
meccanismi di automatismo dei dati in SQL in fase di inserimento ed
aggiornamento.
Si usano in Postgis, Spatialite ed altri protocolli. Gli esempi
sottoriportati sono testati su Spatialite.

Es1: Calcolo automatico delle lunghezze delle polilinee

CREATE TABLE polilinee
(pk INTEGER NOT NULL PRIMARY KEY,
lunghezza DOUBLE,
note TEXT);

SELECT AddGeometryColumn('polilinee','geom',32632,'LINESTRING',2);

CREATE TRIGGER insert_calc_length AFTER INSERT ON polilinee
BEGIN
UPDATE polilinee
SET
lunghezza= ROUND(ST_LENGTH(geom), 2)
WHERE ROWID=NEW.ROWID;
END

CREATE TRIGGER update_calc_length AFTER UPDATE ON polilinee
BEGIN
UPDATE polilinee
SET
lunghezza= ROUND(ST_LENGTH(geom), 2)
WHERE ROWID=NEW.ROWID;
END





--
Sent from: http://osgeo-org.1560.x6.nabble.com/QGIS-Italian-User-f5250612.html


Maggiori informazioni sulla lista QGIS-it-user