限定的字段名(环境设置)
遵循“限定的字段名”环境的工具将使用此设置来区分限定的字段名和未限定的字段名。限定的字段名是要素类或表中的这样一些字段名称,在它们自身的名称后会附加原始要素类或表的名称。仅使用连接数据时,此才会涉及此设置。
用法说明
- 默认限定的输出表字段命名结构为“表名.字段名”。当未限定时,输出表或要素类中的字段将始终用格式字段名命名。
- 在限定的字段名可能超出允许的字段名宽度时,应将环境设为 UNQUALIFIED - 例如,连接 shapefile 时。Shapefile 字段将截短为八个字符。
当工具参数中包含字段映射时(“转换”工具箱的许多工具中都包括),字段名自动设置为 UNQUALIFIED,因此无需设置该环境。
对话框语法
- 选中 - 输出字段名将包括表名。这是默认设置。
- 未选中 - 输出字段名将不包含表名。
脚本语法
arcpy.env.qualifiedFieldNames = qualified_field_names
qualified_field_names |
说明 |
---|---|
True |
输出字段名将包括表名。这也可以使用 QUALIFIED 关键字设置。这是默认设置。 |
False | 输出字段名将不包括表名。这也可以使用 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
相关主题
5/10/2014