açıklama
OGR ( GDAL'ın bir parçası), QGIS tarafından şekil dosyalarına erişmek için kullanılan kitaplıktır. OGR özellikleri sildiğinde hemen silmez, sadece özellikleri silindi olarak işaretler. Bir süre sonra, _repack sonekiyle yeni bir dosya oluşturan ve bu yeni dosyaya silinmiş olarak işaretlenmemiş tüm özellikleri kopyalayan repack adlı bir komut yürütülür. Tamamlandığında, orijinal .dbf _repack.dbf ile değiştirilir. Daha sonra şekil dosyasına aynı şeyi yapar: yeni bir tane oluşturun (_packed.shp), silinmemiş tüm özellikleri kopyalayın ve sonunda orijinal .shp'yi değiştirin.
Bu süreçte bir yerde görünüyor, bir şey başarısız oldu (belki bir çökme?).
Bu süreçte, özellik kimlikleri değişir, bu yüzden sanırım, sahip olduğunuz shp (geometri) ve dbf (öznitelik tablosu), aynı özellikler için farklı özellik kimlikleri kullanır, bu da yaşadığınız garip davranışa yol açar. Öyle görünüyor ki, iki dosyadan biri silinmiş özellikleri içermekte (diğeri) diğeri içermiyor.
Bununla nasıl başa çıkılır?
Güncelleme, Kasım 2016: GDAL 2.2, dosya diske her yazıldığında otomatik olarak yeniden çağırma işlevini çağıracak yerleşik işlevsellik ile birlikte gönderilir. Başka bir şey yapmadan önce: QGIS hakkında iletişim kutusundaki GDAL sürümünü kontrol edin ve GDAL (genellikle QGIS'in bir parçası olarak gönderilir) sürümünüzü en son sürüme güncelleyin.
Muhtemelen işleyebileceğinizden daha fazla veri kaybetmemek için düzenli yedeklemeler yapmak dışında yapabileceğiniz çok şey yoktur (bunu zaten yapıyorsunuz, değil mi? 😉). Ve bunu çoğaltmanın bir yolunu bulursanız (en iyi örnek veri kümesiyle) bir hata raporu oluşturun .
Bu sorunla yeniden karşılaşırsanız, şekil dosyasında uzamsal bir dizin oluşturmayı da deneyebilirsiniz . Bu işlemde, QGIS şekil dosyasında yeniden paketlemeyi çağırır ve shp / dbf'yi "onarabilir". Ama bu sadece doğrulanmamış bir tahmindir.
@Rhm tarafından ve yorumlarda belirtildiği gibi , {xyz} _packed. {Ext} dosyasını {xyz}. { Ext} olarak yeniden adlandırmak da yardımcı olabilir . Paketlenmiş dosya zaten tamamen yazılmışsa ve sadece başarısız olan yeniden adlandıysa, bu adımı manuel olarak yapmak kesinlikle geçerlidir. Ancak _packed dosyası tam olarak yazılmadıysa, özelliklerinizin bazı bölümlerindeki bilgiler eksik olabilir. Bu yüzden denemeden önce ilgili tüm dosyaların yedek kopyalarını alın .
Yeniden paketlemenin ne zaman çağrıldığı hakkında arka plan bilgileri
Arasında QGIS 2.0 ve 2.8 kat yüklenmemiş her repack (çıkış QGIS, yük farklı proje ...) olarak anılmıştır. Bir özellik silinmişse veya bir geometri değiştirilmişse, silinen olarak işaretlenmiş kayıtlara sahip .shp ve .dbf dosyaları bulunmaktadır .
Silinen bayrağı kayıtlara ekleme potansiyeli olan bir işlemden sonra katman kaydedildiğinde QGIS 2.10 yeniden paketleme ile başlanır . Bu nedenle, dosyalar artık diğer uygulamalar tarafından işlenebilmek için daima akılcı durumda olmalıdır.