Qualifizierte Feldnamen (Umgebungseinstellung)
Werkzeuge, die die Umgebungseinstellung "Qualifizierte Feldnamen" berücksichtigen, können mithilfe dieser Einstellung zwischen qualifizierten und unqualifizierten Feldnamen unterscheiden. Bei vollständig qualifizierten Feldnamen handelt es sich um die Namen von Feldern in einer Feature-Class oder Tabelle, bei denen der Name der Ursprungs-Feature-Class bzw. -tabelle an den eigentlichen Feldnamen angehängt ist. Diese Einstellung ist für das Arbeiten mit verbundenen Daten relevant.
Verwendungshinweise
- Die Standardstruktur für die Benennung von qualifizierten Feldern in der Ausgabe-Tabelle ist "Tabellenname.Feldname". Unqualifizierte Felder werden in Ausgabe-Tabellen bzw. Ausgabe-Feature-Classes immer im Format "Feldname" benannt.
- In Situationen, in denen die vollständig spezifizierten Feldnamen die zulässige Breite übersteigen können, müssen Sie die Umgebungseinstellung auf UNQUALIFIED festlegen, z. B. beim Verbinden von Shapefiles. Namen in Shapefile-Feldern werden nach dem achten Zeichen abgeschnitten.
Wenn die Parameter eines Werkzeugs Feldzuordnungen enthalten, wie bei vielen Werkzeugen in der Toolbox "Conversion", wird für Feldnamen automatisch die Option UNQUALIFIED festgelegt, sodass Sie diese Umgebungseinstellung nicht manuell festlegen müssen.
Dialogfeldsyntax
- Aktiviert – Der Ausgabefeldname enthält den Namen der Tabelle. Dies ist die Standardeinstellung.
- Deaktiviert – Der Ausgabefeldname enthält den Namen der Tabelle nicht.
Skriptsyntax
arcpy.env.qualifiedFieldNames = qualified_field_names
qualified_field_names |
Erläuterung |
---|---|
Wahr |
Der Ausgabefeldname enthält den Namen der Tabelle. Diese Einstellung kann auch mit dem Schlüsselwort QUALIFIED festgelegt werden. Dies ist die Standardeinstellung. |
Falsch | Der Ausgabefeldname enthält den Namen der Tabelle nicht. Diese Einstellung kann auch mit dem Schlüsselwort UNQUALIFIED festgelegt werden. |
# 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