Erstellen Sie Shapefile mit dem automatischen Inkrementieren des Primärschlüssels in QGIS

11

Gibt es eine Möglichkeit, beim Erstellen eines neuen Shapefiles in QGIS eine Primärschlüsselspalte mit automatischer Inkrementierung zu erstellen?

Mattwigway
quelle

Antworten:

7

Soweit ich weiß, haben Shapefiles kein Konzept für Primärschlüssel- oder Auto-Inkrement-Datentypen.

Sie können den Feldrechner verwenden, um eine Spalte mit der Zeilennummer zu füllen.

Unterdunkel
quelle
Das einzige Problem ist, dass sie sich zu ändern scheinen, wenn ich die Daten bearbeite und neu berechne. Ich denke, die beste Option ist, zu Spatialite zu wechseln.
Mattwigway
3

Ich habe diese Frage oft auf der Pyshp-Mailingliste und Underdark ist richtig. Das Shapefile-Format bietet keine eindeutigen Bezeichner für Geometrie- oder Attributdatensätze.

Die Objekt-ID, Feature-ID oder andere GUID ist eine Überfüllung der von Ihnen verwendeten Software und nur eine Zeilennummer, die beim Einlesen der Datensätze zugewiesen wird. Die einzige Möglichkeit besteht darin, ein neues Attribut mithilfe von Skript- oder Tabellenkalkulationssoftware zuzuweisen oder die zu laden Daten in eine räumliche Datenbank.

GeospatialPython.com
quelle
1

Ein Shapefile hat ein OBJECTID-Feld. Dies dient als Schlüssel und Primärindex, der Ihren Zwecken entsprechen sollte.

DEWright
quelle
Ich glaube, dies entspricht der Zeilennummer und wird von ArcGIS verwendet, bin mir aber nicht sicher.
Mattwigway
1
Die OBJECTID kann sich jedoch ändern, wenn Sie Zeilen löschen. aber das ist der primäre Index.
DEWright