修飾されたフィールド名(環境設定)
修飾されたフィールド名の環境を反映するツールは、この設定を使用して修飾されたフィールド名と非修飾フィールド名を区別します。修飾されたフィールド名は、元のフィーチャクラスまたはテーブルの名前がフィールド名自体に付加された、フィーチャクラスまたはテーブル内のフィールドの名前です。この設定が適切なのは、結合されたデータを操作するときです。
使用に関する注意
- 修飾された出力テーブル フィールドのデフォルトの命名構造は、tableName.fieldName です。非修飾の場合、出力テーブルまたはフィーチャクラスのフィールドの名前は、常に fieldName という形式になります。
- シェープファイルを結合する場合などのように、修飾されたフィールド名が許されたフィールド名の長さを超える可能性があるときは、この環境を「非修飾」に設定する必要があります。シェープファイルのフィールドは 8 文字に切詰められます。
変換ツールボックスの多くのツールのように、ツールのパラメータにフィールド マッピングが含まれるときは、フィールド名が自動的に「非修飾」になるため、この環境を設定する必要はありません。
ダイアログの構文
- オン - 出力フィールド名はテーブル名を含みます。これがデフォルトです。
- オフ - 出力フィールド名はテーブル名を含みません。
スクリプトの構文
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