フィールドの変更 (Alter Field) (データ管理)

サマリー

フィールド名およびフィールド エイリアス名を変更するか、フィールド プロパティを変更します。

使用法

  • このツールでは、任意のジオデータベース テーブルまたはフィーチャクラスのフィールド名またはフィールド エイリアス名を変更できます。

  • メモリ内のフィーチャクラスまたはテーブルを使用している場合、ObjectIDShape またはネットワーク解析レイヤーで必要なその他のフィールドの名前を変更すると、データが壊れたり、予期せぬ動作を起こす可能性があります。

パラメーター

ラベル説明データ タイプ
入力テーブル

変更するフィールドを含む入力ジオデータベース テーブルまたはフィーチャクラス。

Table View; Raster Layer; Mosaic Layer
フィールド名

変更するフィールドの名前。 このフィールドが必須フィールド (isRequired=true) である場合、変更できるのはフィールド エイリアスのみです。

Field
新しいフィールド名
(オプション)

フィールドの新しい名前。

String
新しいフィールド エイリアス
(オプション)

フィールドの新しいフィールド エイリアス。

String
新しいフィールド タイプ
(オプション)

フィールドの新しいフィールド タイプを指定します。 このプロパティは入力テーブルが空 (レコードが含まれていない) の場合にのみ適用できます。

  • Text任意の文字列。
  • Float (単精度) -3.4E38〜1.2E38の範囲の有理数。
  • Double (倍精度浮動小数点) -2.2E308〜1.8E308の範囲の有理数。
  • Short (小さい整数) -32,768〜32,767の範囲の整数。
  • Long (大きい整数) -2,147,483,648〜2,147,483,647の範囲の整数。
  • Date日付と時刻
  • Blob (バイナリ データ)大容量バイナリ オブジェクト。BLOB フィールドにアイテムを読み込む、または BLOB フィールドの内容を参照するには、カスタム ローダー、カスタム ビューアー、またはサードパーティ アプリケーションが必要です。
  • Raster imageryラスター画像。ArcGIS ソフトウェアでサポートされているラスター データセット形式はすべて格納できますが、小さい画像のみを使用することを強くお勧めします。
  • GUID (Globally Unique Identifier)GUID (Globally Unique Identifier)
String
新しいフィールドの長さ
(オプション)

フィールドの新しい長さ。 この値は、フィールドの各レコードに許容される文字の最大数を設定します。 このオプションは、タイプがTextまたは Blob (バイナリ データ) のフィールドに対してのみ適用されます。 テーブルが空の場合は、フィールドの長さは増減できます。 テーブルが空ではない場合は、長さは現在の値からのみ増加できます。

Long
新しいフィールドに NULL 値を許可
(オプション)

このフィールドに NULL 値を含めることができるかどうかを指定します。 NULL 値は、ジオデータベースのフィールドでのみサポートされています。 このオプションはテーブルが空 (レコードが含まれていない) の場合にのみ適用できます。

  • オン - フィールドで NULL 値を使用できます。 これがデフォルトです。
  • オフ - フィールドで NULL 値を使用できません。
Boolean
エイリアスの消去
(オプション)

入力フィールドのエイリアスを消去するかどうかを指定します。 フィールドのエイリアスを消去するには、フィールド エイリアス パラメーターが空である必要があります。

  • オン - フィールド エイリアスは消去されます (NULL に設定)。 フィールド エイリアス パラメーターが空である必要があります。
  • オフ - フィールド エイリアスは消去されません。 これがデフォルトです。
Boolean

派生した出力

ラベル説明データ タイプ
更新された入力テーブル

更新された入力テーブル。

Table View; Raster Layer; Mosaic Layer

arcpy.management.AlterField(in_table, field, {new_field_name}, {new_field_alias}, {field_type}, {field_length}, {field_is_nullable}, {clear_field_alias})
名前説明データ タイプ
in_table

変更するフィールドを含む入力ジオデータベース テーブルまたはフィーチャクラス。

Table View; Raster Layer; Mosaic Layer
field

変更するフィールドの名前。 このフィールドが必須フィールド (isRequired=true) である場合、変更できるのはフィールド エイリアスのみです。

Field
new_field_name
(オプション)

フィールドの新しい名前。

String
new_field_alias
(オプション)

フィールドの新しいフィールド エイリアス。

String
field_type
(オプション)

フィールドの新しいフィールド タイプを指定します。 このプロパティは入力テーブルが空 (レコードが含まれていない) の場合にのみ適用できます。

  • TEXT任意の文字列。
  • FLOAT -3.4E38〜1.2E38の範囲の有理数。
  • DOUBLE -2.2E308〜1.8E308の範囲の有理数。
  • SHORT -32,768〜32,767の範囲の整数。
  • LONG -2,147,483,648〜2,147,483,647の範囲の整数。
  • DATE日付と時刻
  • BLOB大容量バイナリ オブジェクト。BLOB フィールドにアイテムを読み込む、または BLOB フィールドの内容を参照するには、カスタム ローダー、カスタム ビューアー、またはサードパーティ アプリケーションが必要です。
  • RASTERラスター画像。ArcGIS ソフトウェアでサポートされているラスター データセット形式はすべて格納できますが、小さい画像のみを使用することを強くお勧めします。
  • GUIDGUID (Globally Unique Identifier)
String
field_length
(オプション)

フィールドの新しい長さ。 この値は、フィールドの各レコードに許容される文字の最大数を設定します。 このオプションは、タイプが TEXT または BLOB のフィールドに対してのみ適用されます。 テーブルが空の場合は、フィールドの長さは増減できます。 テーブルが空ではない場合は、長さは現在の値からのみ増加できます。

Long
field_is_nullable
(オプション)

このフィールドに NULL 値を含めることができるかどうかを指定します。 NULL 値は、ジオデータベースのフィールドでのみサポートされています。 このオプションは入力テーブルが空 (レコードが含まれていない) の場合にのみ適用できます。

  • NON_NULLABLEフィールドでは NULL 値を使用できません。
  • NULLABLEフィールドで NULL 値を使用できます。 これがデフォルトです。
Boolean
clear_field_alias
(オプション)

入力フィールドのエイリアスを消去するかどうかを指定します。 フィールドのエイリアスを消去するには、フィールド エイリアス パラメーターが空である必要があります。

  • CLEAR_ALIASフィールド エイリアスは消去されます (NULL に設定)。
  • DO_NOT_CLEARフィールド エイリアスは消去されません。 これがデフォルトです。
Boolean

派生した出力

名前説明データ タイプ
out_table

更新された入力テーブル。

Table View; Raster Layer; Mosaic Layer

コードのサンプル

AlterField (フィールドの変更) の例 1 (Python ウィンドウ)

次の Python ウィンドウ スクリプトは、イミディエイト モードで AlterField ツールを使用する方法を示しています。

arcpy.AlterField_management(r'C:\Data\Garbo.gdb\Khyber', 'Elev', 'ELEVATION', 'Elevation in Metres')
AlterField (フィールドの変更) の例 2 (スタンドアロン スクリプト)

次の Python ウィンドウ スクリプトは、スタンドアロン スクリプトで AlterField ツールを使用する方法を示しています。

#Import geoprocessing
import arcpy

#Set workspace
arcpy.env.workspace = r'C:\Data\Garbo.gdb'

#Loop through feature classes looking for a field named 'elev'
fcList = arcpy.ListFeatureClasses() #get a list of feature classes
for fc in fcList:  #loop through feature classes
    fieldList = arcpy.ListFields(fc)  #get a list of fields for each feature class
    for field in fieldList: #loop through each field
        if field.name.lower() == 'elev':  #look for the name elev
            arcpy.AlterField_management(fc, field.name, 'ELEVATION', 'Elevation in Metres')
AlterField (フィールドの変更) の例 3 (スタンドアロン スクリプト)

次の Python ウィンドウ スクリプトは、スタンドアロン スクリプトで空のフィーチャクラスに対して AlterField ツールを使用する方法を示しています。

#Import geoprocessing
import arcpy

#Set local variables
fc = "C:/Data/Garbo.gdb/trails" #Note:empty feature class
field = "condition_rating" #short int, non nullable field
new_name = "notes"
new_alias = "Comments on Trail Condition"
new_type = "TEXT"
new_length = "60"
new_is_nullable = "NULLABLE"
clear_alias = "FALSE"

#Alter the properties of a non nullable, short data type field to become a text field
arcpy.AlterField_management(fc, field, new_name, new_alias, new_type, new_length, new_is_nullable, clear_alias)

環境

特殊なケース

ライセンス情報

  • Basic: Yes
  • Standard: Yes
  • Advanced: Yes

関連トピック