Mehr

Entscheiden Sie die Länge von Shapefile-Feldern?

Entscheiden Sie die Länge von Shapefile-Feldern?


Bei meiner Arbeit habe ich mehrere Shapefiles geerbt, die von MapInfo stammen und die ich in ein neues Projekt in QGIS einbringe. Ich habe die Möglichkeit, die Spaltennamen zu ändern, Spalten hinzuzufügen und zu subtrahieren und da sie noch nicht zu viele Daten enthalten, kann ich neu beginnen und auch die Feldlängen anpassen.

Ich stelle fest, dass einige der Feldlängen viel größer sind als sie sein müssen, und ich erinnere mich an die Erstellung von Datenbanken vor etwa 20 Jahren, dass es am besten ist, die Feldlängen nicht länger zu halten, als sie sein müssen 'Platz' sparen, um die Effizienz zu verbessern.

Ist das noch wünschenswert oder spielt die Feldlänge keine Rolle mehr?


Die Antwort hängt vom Datenformat ab. dBase-III+-Dateien, die in Shapefiles für Attribute verwendet werden, haben eine feste Breite, sodass die Definition einer FIPS-Spalte mit einer Textbreite von 254 254 Byte verwendet. Schlimmer noch, dBase hat eine maximale Datensatzbreite von 4000 Bytes, sodass die 249, die für ein Feld mit fünf Zeichen verschwendet werden, nicht für andere Felder verfügbar sind (von denen es maximal 100 oder 255 gibt, je nachdem, wer den Standard implementiert). Beschränkungen gelten auch für die Gesamtgröße der dBase-Datei (2 GB), die von 536k Datensätzen bei maximaler Breite erreicht werden könnte, wenn 5,36m Datensätze bei 400 Byte Breite verfügbar wären.

Es gibt noch einen weiteren Grund, die Feldbreite zu begrenzen – die Datenqualität. Wenn ein Bezeichner rechtlich nur zwei Zeichen enthalten kann, Sie ihn aber mit zehn definieren, erhöhen Sie die Wahrscheinlichkeit, dass ein ungültiger Wert mit dicken Fingern von der Datendatei akzeptiert wird.

Auf der anderen Seite, wenn Sie nur die erforderliche Breite angeben und internationale Daten im UTF-8-Format erhalten, werden Sie möglicherweise wenig Platz haben, wenn a Charakter kann 2-6 Byte verwenden.

Für Datenbankzeichenfolgenfelder (einschließlich File-Geodatabase), die im Allgemeinen beendet werden und daher keinen Zeilenplatz verschwenden, ist Flexibilität eine Option, aber für Formate mit fester Breite gelten weiterhin die alten Regeln.


Schau das Video: How to clip any district from country shapefile in ArcGIS