Quels sont les noms de classe d'entités et de tables valides dans ArcGIS Desktop?

10

Quelles sont les règles de dénomination des classes d'entités et des tables valides dans ArcGIS Desktop, et existe-t-il un document de support pouvant expliquer toutes les limitations de dénomination des jeux de données?

iRfAn
la source
1
Cela dépend du type de données que vous utilisez, hein?
Chad Cooper
J'utilise un fichier de forme et une géodatabase fichier
iRfAn
3
quelque chose de mal documenté: n'utilisez pas de chiffre pour le premier caractère d'un jeu de données.
Kirk Kuykendall
C'est exactement mon problème, j'essaie d'utiliser le numéro pour le premier caractère du jeu de données, aucun problème dans le fichier de forme mais la géodatabase fichier me donne une erreur
iRfAn
Désolé, mais j'essaie de résoudre un problème similaire: lors de l'importation dans gdb, comment ajouter la date avant le nom? ex: name.shp -> 120706_nom classe d'
entités

Réponses:

19

C'est dans la documentation: Définition des propriétés de classe d'entités

Plus précisément:

Les noms doivent commencer par une lettre et non par un chiffre ou un caractère spécial tel qu'un astérisque (*) ou un signe de pourcentage (%). Les noms ne doivent pas avoir de caractères autres que des caractères alphanumériques et des traits de soulignement.

Derek Swingley
la source
7

Swingley a répondu à cette question ci-dessus ... Mais, en termes d'automatisation de cette procédure, vous pouvez écrire un script qui implémente la méthode IFieldChecker.ValidateTableName . Si je me souviens bien, il renvoie un nom corrigé avec des caractères invalides remplacés par des traits de soulignement.

Jakub Sisak GeoGraphics
la source
Je connais validateTableName mais voici ma situation, j'ai des fichiers de forme "1-Digit postcode.shp, 2-digit postcode.shp" et quand j'utilise validateTableName sur ces deux fichiers de forme, j'obtiendrai le résultat pour les deux "_Digit_postcode.shp ". Je pense que j'ai besoin d'écrire ma propre fonction pour cette validation de nom de table.
2011
ça fait un tout donc corrigez-moi si je me trompe mais si vous utilisez le paramètre de l'espace de travail, vous devriez en fait obtenir "_Digit_postcode.shp" et "_Digit_postcode_1.shp"
Jakub Sisak GeoGraphics
0

Depuis ArcGIS 10.3, il existe une arcpyfonction ValidateTableName:

Prend un nom de table et un chemin d'accès à l'espace de travail et renvoie un nom de table valide pour l'espace de travail. Un trait de soulignement "_" remplacera tout caractère non valide trouvé dans le nom de la table et respectera les restrictions de nom pour l'espace de travail. Les restrictions de nom de table dépendent du SGBDR spécifique utilisé.

Alex Tereshenkov
la source