Modifier le champ (Gestion des données)

Résumé

Renomme les champs et les alias de champ, ou modifie les propriétés de champ.

Utilisation

  • Cet outil permet de renommer les champs ou les alias de champ d’une classe d’entités ou d’une table de géodatabase.

  • Lorsque vous utilisez des tables ou des classes d’entités en mémoire, en renommant le champ ObjectID, le champ Shape ou d’autres champs obligatoires, tels que ceux présents dans les couches d’analyse de réseau, vous risquez d’endommager les données ou d’induire un comportement inattendu.

Syntaxe

arcpy.management.AlterField(in_table, field, {new_field_name}, {new_field_alias}, {field_type}, {field_length}, {field_is_nullable}, {clear_field_alias})
ParamètreExplicationType de données
in_table

Classe d’entités ou table en entrée qui contient le champ à modifier.

Table View; Raster Layer; Mosaic Layer
field

Nom du champ à modifier. S’il s’agit d’un champ obligatoire (isRequired=true), seul l’alias de champ peut être modifié.

Field
new_field_name
(Facultatif)

Nouveau nom du champ.

String
new_field_alias
(Facultatif)

Nouvel alias du champ.

String
field_type
(Facultatif)

Indique le nouveau type du champ. Cette propriété s’applique uniquement si la table en entrée est vide (ne contient aucun enregistrement).

  • TEXTToute chaîne de caractères.
  • FLOAT Nombres fractionnels compris entre -3,4E38 et 1,2E38.
  • DOUBLE Nombres fractionnels compris entre-2,2E308 et 1,8E308.
  • SHORT Nombres entiers compris entre -32 768 et 32 767.
  • LONG Nombres entiers compris entre -2 147 483 648 et 2 147 483 647.
  • DATEDate et/ou heure.
  • BLOBLongue séquence de nombres binaires. Vous avez besoin d'une visionneuse ou d'un chargeur personnalisé, ou d'une application tierce pour charger des attributs dans un champ BLOB ou afficher le contenu d'un champ BLOB.
  • RASTERImages raster. Tous les formats de jeu de données raster pris en charge par ArcGIS peuvent être stockés, mais il est fortement recommandé de n'utiliser que des images de petite taille.
  • GUIDIdentifiant unique global.
String
field_length
(Facultatif)

Nouvelle longueur du champ. Définit le nombre maximal de caractères autorisés pour chaque enregistrement du champ. Cette option ne s’applique qu’aux champs de type TEXT ou BLOB. Si la table est vide, il est possible d’augmenter ou de diminuer la longueur de champ. Si la table n’est pas vide, il est possible uniquement d’augmenter la longueur à partir de la valeur actuelle.

Long
field_is_nullable
(Facultatif)

Indique si le champ peut contenir des valeurs Null (nulles). Les valeurs Null sont prises en charge uniquement pour les champs d'une géodatabase. Cette option s’applique uniquement si la table en entrée est vide (ne contient aucun enregistrement).

  • NON_NULLABLELe champ n'autorise pas les valeurs Null.
  • NULLABLELe champ autorise les valeurs Null. Il s’agit de l’option par défaut.
Boolean
clear_field_alias
(Facultatif)

Indique si l’alias du champ en entrée doit être effacé. Le paramètre d'alias de champ doit être vide pour effacer l'alias du champ.

  • CLEAR_ALIASL'alias de champ va être effacé (défini sur Null).
  • DO_NOT_CLEARL'alias de champ ne va pas être effacé. Il s’agit de l’option par défaut.
Boolean

Sortie dérivée

NomExplicationType de données
out_table

Table en entrée mise à jour.

Vue tabulaire, couche raster, couche de mosaïque

Exemple de code

Exemple 1 d'utilisation de l'outil AlterField (fenêtre Python)

Le script de fenêtre Python suivant montre comment utiliser l'outil AlterField en mode immédiat.

arcpy.AlterField_management(r'C:\Data\Garbo.gdb\Khyber', 'Elev', 'ELEVATION', 'Elevation in Metres')
Exemple 2 d'utilisation de l'outil AlterField (script autonome)

Le script de fenêtre Python ci-dessous illustre l'utilisation de l'outil AlterField dans un script autonome.

#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')
Exemple 3 d'utilisation de l'outil AlterField (script autonome)

Le script de fenêtre Python ci-dessous illustre l'utilisation de l'outil AlterField sur une classe d'entités vide dans un script autonome.

#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)

Informations de licence

  • Basic: Oui
  • Standard: Oui
  • Advanced: Oui

Rubriques connexes