SpatiaLite içindeki uzamsal katmanlar (tablolar), tetikleyiciler, dizinler ve geometry_columnstablodaki (en azından) girişler dahil olmak üzere çeşitli destekleyici nesneleri ve meta verileri içerir . Ben (tercihen) tek seferde tüm gerekli değişiklikleri idare edecek bir GUI veya uzamsal katmanları kırmamak için gerekli tüm değişikliklerin belgelerini (geri dönüş) arıyorum.
Tablolar:
- Giriş
geometry_columns.f_table_name. - Beş tetikleyici adı verilir
[prefix]_[table_name]_geometry; burada önek, işlemin geri alınması veya dizin güncelleştirmesi olup olmadığını gösterir. - Üç uzamsal indeks
idx_[table_name]_geometry[_suffix]
Bunu QGIS DB Manager ve SpatiaLite-GUI olmak üzere iki uygulamada denedim.
QGIS DB Manager aşağıdaki etkilere sahiptir:
geometry_columnsYeni tablo adıyla doğru güncelleme- Tetikleyicileri yeniden adlandırmaz. Tetikleyici tanımı kısmen değiştirilir, bu nedenle
BEFORE [INSERT|UPDATE|DELETE]yeni tablo adını gösterir, ancak koşul yine de eski adı arargeometry_columns. - Uzamsal indeksleri yeniden adlandırmaz. Tetikleyiciler hala eski dizin adlarına başvurduğundan bunun önemli olup olmadığından emin değilim.
SpatiaLite-GUI'de Bakım → Tabloyu yeniden adlandır'ı seçtiğinizde, bir SQL ALTER TABLEifadesinin saplamasını alırsınız . Bu basit bir SQL ve QGIS DB Manager'dan bile daha az. Yeni tablo adını doldurursanız, tablo yeniden adlandırılır. Diğer etkiler:
- Tablo gelmez değil de değiştirildi olsun
geometry_columns.f_table_namebirçok GISes bir mekansal katman olarak tabloya bakınız olmayacak demektir. - Tetikleyicileri yeniden adlandırmaz. Tetikleyici tanımı kısmen değiştirilir, bu nedenle
BEFORE [INSERT|UPDATE|DELETE]yeni tablo adını gösterir, ancak koşul yine de eski adı arargeometry_columns. - Uzamsal indeksleri yeniden adlandırmaz. Tetikleyiciler hala eski dizin adlarına başvurduğundan bunun önemli olup olmadığından emin değilim.
Spatialite-GUI'nin, geometry_columnsuzamsal bir dizin oluşturmak veya yeniden oluşturmak ve tetikleyicileri kurtarmak için doğru girişi ekleyen (ancak SRID, geometri türü ve boyutları belirtmenizi gerektirir) bir geometri sütunu kurtarma seçeneği sunduğunu unutmayın. Bu işlevlerin çoğu eski tablo satırlarını, tetikleyicileri veya dizinleri kaldırarak, içinde çok sayıda (muhtemelen zararsız ama sinir bozucu) schmutz bulunan bir DB'ye yol açar.