[Gfoss] Tabella spatialite e fallimento dello zoom all'estensione del layer con QGis

a.furieri a lqt.it a.furieri a lqt.it
Lun 17 Nov 2014 15:55:28 CET


On Mon, 17 Nov 2014 15:41:22 +0100, Luca Mandolesi wrote:
> E' possibile che la mia tabella spatialite sia "corrotta" e che non
> riesca piĆ¹ a capire bene la propria estensione a seconda della query
> attiva?
>

non e' affatto impossibile che lo Spatial Index si corrompa.
in genere accase quando:
- la tavola non ha nessuna Primary Key, oppure ha una Primary Key
   che non e' composta da un'unica colonna INTEGER
- e' stato fatto un VACUUM che ha riordinato fisicamente tutte le
   righe facendo cosi' impazzire i ROWIDs


> Qualcuno ha una mezza idea di dove mettere le mani?
>

prima verifica se hai tavole senza ROWID o com shadowed-ROWID:

SELECT f_table_name, CheckShadowedRowid(f_table_name),
     CheckWithoutRowid(f_table_name)
FROM geometry_columns;

se tutto va bene vedrai tutto a ZERO; se vedi qualche 1 invece
significa che hai problemi.

poi vai a verificare se ci sono Spatial Index corrotti:

SELECT CheckSpatialIndex();

qua funziona all'inverso: se torna 1 tutto bene, altrimenti
se torna ZERO ci sono problemi. in quest'ultimo caso per
rimettere tutto a posto:

SELECT RecoverSpatialIndex();

ciao Sandro



Maggiori informazioni sulla lista Gfoss