[Gfoss] problemi con indici spaziali sqlite

a.furieri a lqt.it a.furieri a lqt.it
Gio 20 Feb 2014 16:34:17 CET


On Thu, 20 Feb 2014 16:18:50 +0100, Luca Lanteri wrote:
> Quello che però ho visto è che mi si è ripresentata più volte la
> necessità di dover ricreare gli indici perché il DB funzionasse
> correttamente, in particolare su una tavola dove la geometria non
> veniva inserita da qgis ma calcolata mediante un trigger sulla base 
> di
> un'altra geometria.
>

e probabilmente l'intoppo e' proprio qua.
su SpatiaLite le geometrie devono sempre venire create invocando la
funzione SQL AddGeometryColumn() [oppure RecoverGeometryColumn()],
perche' e' l'unico modo sicuro per  garantire che tutti i Triggers
necessari vengano creati nel modo corretto.

qualsiasi geometria che invece venga semplicemente creata andando
ad inserire direttamente una riga su "geometry_columns" risultera'
inevitabilmente "zoppa".
proprio perche' in questo modo verra' a mancare il supporto dei
Triggers, che e' assolutamente idispensabile per assicurare il
corretto aggiornamento degli R*Trees ogni volta che si effettua
una INSERT / UPDATE / DELETE.

ciao Sandro


Maggiori informazioni sulla lista Gfoss