Noms de champs qualifiés (paramètre d'environnement)
Les outils dédiés à l'environnement Noms de champs qualifiés utilisent ce paramètre pour faire la distinction entre les noms de champs qualifiés et non qualifiés. Les noms de champs qualifiés sont les noms des champs d'une classe d'entités ou d'une table auxquels est ajouté le nom de la classe ou de la table d'origine. Ce paramètre est approprié dans le cadre de l'utilisation de données jointes.
Remarques sur l'utilisation
- La structure d'appellation par défaut des champs qualifiés de la table en sortie est tableName.fieldName. S'agissant des champs non qualifiés de la classe d'entités ou de la table en sortie, le format utilisé est toujours fieldName.
- Dans les instances où les noms de champ qualifiés peuvent dépasser la largeur de nom de champ autorisée, vous devez définir l'environnement sur UNQUALIFIED, par exemple, lors de la jointure de fichiers de formes. Les champs de fichier de formes sont tronqués à huit caractères.
Lorsque des appariements de champs sont inclus dans les paramètres d'un outil, comme c'est le cas dans de nombreux outils de la boîte à outils Conversion, les noms des champs sont automatiquement NON QUALIFIES ; il n'est donc nul besoin de définir cet environnement.
Syntaxe de la boîte de dialogue
- Coché – Le nom de champ en sortie inclut le nom de la table. Il s'agit de l'option par défaut.
- Non coché – Le nom de champ en sortie n'inclut pas le nom de la table.
Syntaxe de script
arcpy.env.qualifiedFieldNames = qualified_field_names
qualified_field_names |
Explication |
---|---|
True |
Le nom de champ en sortie inclut le nom de la table. Ce paramètre peut également être défini à l'aide du mot-clé QUALIFIED. Il s'agit de l'option par défaut. |
False | Le nom de champ en sortie n'inclut pas le nom de la table. Ce paramètre peut également être défini à l'aide du mot-clé UNQUALIFIED. |
# Name: addjoin.py
# Purpose: Join a table to a featureclass and have the output
# unqualified
# Author: ESRI
# Import system modules
import arcpy
from arcpy import env
try:
# Set environment settings
env.workspace = "C:/data"
env.qualifiedFieldNames = False
# Set local variables
inFeatures = "Habitat_Analysis.gdb/vegtype"
layerName = "veg_layer"
joinTable = "vegtable.dbf"
joinField = "HOLLAND95"
expression = "vegtable.HABITAT = 1"
outFeature = "Habitat_Analysis.gdb/vegjoin"
# Create a feature layer from the vegtype featureclass
arcpy.MakeFeatureLayer_management(inFeatures, layerName)
# Join the feature layer to a table
arcpy.AddJoin_management(layerName, joinField, joinTable, joinField)
# Copy the layer to a new permanent feature class
# Output fields are unqualified, so the field name will
# not contain the origin table
arcpy.CopyFeatures_management(layerName, outFeature)
except Exception, e:
# If an error occurred, print line number and error message
import traceback, sys
tb = sys.exc_info()[2]
print "Line %i" % tb.tb_lineno
print e.message