Was sind gültige Feature-Class- und Tabellennamen in ArcGIS Desktop?

10

Welche Regeln gelten für die Benennung gültiger Feature-Classes und Tabellen in ArcGIS Desktop? Gibt es ein unterstützendes Dokument, in dem alle Einschränkungen für die Benennung von Datasets erläutert werden können?

iRfAn
quelle
1
Kommt darauf an, welchen Datentyp Sie verwenden, oder?
Chad Cooper
Ich benutze
Formdatei
3
etwas schlecht Dokumentiertes: Verwenden Sie keine Zahl für das erste Zeichen eines Datensatzes.
Kirk Kuykendall
Dies ist genau mein Problem, ich versuche, Nummer für das erste Zeichen des Datensatzes zu verwenden, kein Problem in
Formdatei,
Entschuldigung, aber ich versuche ein ähnliches Problem zu lösen: Wie füge ich beim Importieren in gdb ein Datum vor dem Namen hinzu? Beispiel: name.shp -> 120706_name Feature-Class
Luca Moiana

Antworten:

19

Es befindet sich in der Dokumentation: Definieren von Feature-Class-Eigenschaften

Speziell:

Namen müssen mit einem Buchstaben beginnen, nicht mit einer Zahl oder einem Sonderzeichen wie einem Sternchen (*) oder einem Prozentzeichen (%). Namen dürfen keine anderen Zeichen als alphanumerische Zeichen und Unterstriche enthalten.

Derek Swingley
quelle
7

Diese Frage wurde von Swingley oben beantwortet ... Um dieses Verfahren zu automatisieren, können Sie jedoch ein Skript schreiben, das die IFieldChecker.ValidateTableName- Methode implementiert . Wenn ich mich richtig erinnere, gibt es einen korrigierten Namen mit ungültigen Zeichen zurück, die durch Unterstriche ersetzt wurden.

Jakub Sisak GeoGraphics
quelle
Ich kenne validateTableName, aber hier ist meine Situation: Ich habe Formdateien "1-stellige Postleitzahl.shp, 2-stellige Postleitzahl.shp" und wenn ich validateTableName für diese beiden Formdateien verwende, erhalte ich das Ergebnis für beide "_Digit_postcode.shp" ". Ich denke, ich muss meine eigene Funktion für diese Validierung des Tabellennamens schreiben.
iRfAn
Es war eine ganze Sache, also korrigiere mich, wenn ich falsch liege, aber wenn du den Workspace-Parameter verwendest, solltest du tatsächlich "_Digit_postcode.shp" und "_Digit_postcode_1.shp"
Jakub Sisak GeoGraphics
0

Seit ArcGIS 10.3 gibt es eine arcpyFunktion ValidateTableName:

Nimmt einen Tabellennamen und einen Arbeitsbereichspfad und gibt einen gültigen Tabellennamen für den Arbeitsbereich zurück. Ein Unterstrich "_" ersetzt alle ungültigen Zeichen im Tabellennamen und berücksichtigt die Namensbeschränkungen für den Arbeitsbereich. Die Einschränkungen für Tabellennamen hängen vom verwendeten spezifischen RDBMS ab.

Alex Tereshenkov
quelle