Crea Shapefile con chiave primaria di incremento automatico in QGIS


11

C'è un modo per creare una colonna chiave primaria di incremento automatico quando si crea un nuovo Shapefile in QGIS?

Risposte:


7

Per quanto ne so, gli Shapefile non hanno il concetto di chiave primaria o tipi di dati di incremento automatico.

Quello che puoi fare è usare Field Calculator per popolare una colonna con il numero di riga.


L'unico problema è che sembrano cambiare quando modifico i dati e ricalcolo; Penso che l'opzione migliore sia passare a Spatialite.
mattwigway,

3

Ricevo questa domanda molto sulla mailing list di pyshp e underdark è corretto. Il formato dello shapefile non fornisce identificatori univoci per la geometria o i record degli attributi.

L'ID oggetto, l'ID funzione o un altro GUID è un trapping del software utilizzato ed è solo un numero di riga assegnato durante la lettura dei record. Le uniche opzioni disponibili sono assegnare un nuovo attributo utilizzando gli script o il software per fogli di calcolo oppure caricare il dati in un database spaziale.


1

Un Shapefile ha un campo OBJECTID; che funge da chiave e indice primario che dovrebbe soddisfare i tuoi scopi.


Credo che questo sia lo stesso del numero di riga, ed è quello che ArcGIS usa, ma non ne sono sicuro.
mattwigway,

1
Ma OBJECTID può cambiare quando si eliminano le righe; ma quello è l'indice primario.
DEWright,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.