Modifier un champ (Gestion des données)

Synthèse

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

Utilisation

    Attention :

    Cet outil modifie les données en entrée. Pour plus d’informations et connaître les stratégies permettant d’empêcher les modifications de données indésirables, reportez-vous à la rubrique Outils qui modifient ou mettent à jour les données en entrée.

  • 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.

  • Vous pouvez utiliser cet outil pour modifier l’alias d’un champ dans une table ou une vue inscrite auprès de la géodatabase.

  • Si le champ en entrée est un champ obligatoire, seul l’alias de champ peut être modifié.

Paramètres

ÉtiquetteExplicationType de données
Table en entrée

Classe d’entités ou table de géodatabase en entrée contenant le champ qui sera modifié.

Table View; Raster Layer; Mosaic Layer
Nom de champ

Nom du champ qui sera modifié. S’il s’agit d’un champ obligatoire, seul l’alias de champ sera modifié.

Field
Nom du nouveau champ
(Facultatif)

Nouveau nom du champ.

String
Nouvel alias de champ
(Facultatif)

Nouvel alias du champ.

String
Nouveau type de champ
(Facultatif)

Indique le nouveau type du champ. Ce paramètre est applicable uniquement si la table en entrée est vide (ne contient aucun enregistrement).

  • Court (Entier 16 bits)Le champ sera de type court. Les champs courts prennent en charge les nombres entiers compris entre -32 768 et 32 767.
  • Long (Entier 32 bits)Le champ sera de type long. Les champs longs prennent en charge les nombres entiers compris entre -2 147 483 648 et 2 147 483 647.
  • Entier très grand (entier de 64 bits)Le champ sera de type entier très grand. Les champs d’entiers très grands prennent en charge les nombres entiers compris entre -(253) et 253.
  • Réel simple (Virgule flottante 32 bits)Le champ sera de type réel simple. Les champs de type réel simple prennent en charge les nombres fractionnels compris entre -3,4E38 et 1,2E38.
  • Réel double (Virgule flottante 64 bits)Le champ sera de type réel double. Les champs de type réel double prennent en charge les nombres fractionnels compris entre -2,2E308 et 1,8E308.
  • TexteLe champ sera de type texte. Les champs de texte prennent en charge une chaîne de caractères.
  • DateLe champ sera de type date. Les champs de date prennent en charge les valeurs d’heure et de date.
  • Date uniquementLe champ sera de type date uniquement. Les champs Date uniquement prennent en charge des valeurs de date sans valeurs d’heure.
  • Heure uniquementLe champ sera de type heure uniquement. Les champs Heure uniquement prennent en charge des valeurs d’heure sans valeurs de date.
  • Décalage de l’horodatageLe champ sera de type décalage de l’horodatage. Les champs Décalage de l’horodatage prennent en charge des valeurs de date, d’heure et un décalage par rapport au temps universel coordonné (UTC).
  • Blob (données binaires)Le champ sera de type BLOB. Les champs BLOB prennent en charge les données stockées sous forme d’une longue 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.
  • GUID (identifiant unique global)Le champ sera de type GUID. Les champs GUID contiennent des chaînes de registre constituées de 36 caractères placés entre des accolades.
  • RasterLe champ sera de type raster. Les champs raster peuvent stocker des données raster dans ou avec la géodatabase. Tous les formats de jeu de données raster pris en charge par ArcGIS peuvent être stockés, mais il est recommandé de n’utiliser que des images de petite taille.
String
Nouvelle longueur de champ
(Facultatif)

Nouvelle longueur du champ. Définit le nombre maximal de caractères autorisés pour chaque enregistrement du champ. Ce paramètre ne s’applique qu’aux champs de type Texte ou Blob (données binaires). 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
Le nouveau champ accepte les valeurs nulles
(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. Ce paramètre est applicable uniquement si la table est vide (ne contient aucun enregistrement).

  • Option sélectionnée : le champ peut contenir des valeurs Null. Il s’agit de l’option par défaut.
  • Option désélectionnée : le champ ne peut pas contenir de valeurs Null.
Boolean
Supprimer l’alias
(Facultatif)

Indique si l’alias du champ en entrée doit être effacé. La valeur du paramètre Nouvel alias de champ doit être vide pour effacer l’alias du champ.

  • Activé : l'alias de champ va être effacé (défini sur Null). Le paramètre d'alias de champ doit être vide.
  • Désactivé : l'alias de champ ne va pas être effacé. Il s’agit de l’option par défaut.
Boolean

Sortie obtenue

ÉtiquetteExplicationType de données
Table en entrée mise à jour

Table en entrée mise à jour.

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})
NomExplicationType de données
in_table

Classe d’entités ou table de géodatabase en entrée contenant le champ qui sera modifié.

Table View; Raster Layer; Mosaic Layer
field

Nom du champ qui sera modifié. S’il s’agit d’un champ obligatoire, seul l’alias de champ sera 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. Ce paramètre est applicable uniquement si la table en entrée est vide (ne contient aucun enregistrement).

  • SHORTLe champ sera de type court. Les champs courts prennent en charge les nombres entiers compris entre -32 768 et 32 767.
  • LONGLe champ sera de type long. Les champs longs prennent en charge les nombres entiers compris entre -2 147 483 648 et 2 147 483 647.
  • BIGINTEGERLe champ sera de type entier très grand. Les champs d’entiers très grands prennent en charge les nombres entiers compris entre -(253) et 253.
  • FLOATLe champ sera de type réel simple. Les champs de type réel simple prennent en charge les nombres fractionnels compris entre -3,4E38 et 1,2E38.
  • DOUBLELe champ sera de type réel double. Les champs de type réel double prennent en charge les nombres fractionnels compris entre -2,2E308 et 1,8E308.
  • TEXTLe champ sera de type texte. Les champs de texte prennent en charge une chaîne de caractères.
  • DATELe champ sera de type date. Les champs de date prennent en charge les valeurs d’heure et de date.
  • DATEONLYLe champ sera de type date uniquement. Les champs Date uniquement prennent en charge des valeurs de date sans valeurs d’heure.
  • TIMEONLYLe champ sera de type heure uniquement. Les champs Heure uniquement prennent en charge des valeurs d’heure sans valeurs de date.
  • TIMESTAMPOFFSETLe champ sera de type décalage de l’horodatage. Les champs Décalage de l’horodatage prennent en charge des valeurs de date, d’heure et un décalage par rapport au temps universel coordonné (UTC).
  • BLOBLe champ sera de type BLOB. Les champs BLOB prennent en charge les données stockées sous forme d’une longue 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.
  • GUIDLe champ sera de type GUID. Les champs GUID contiennent des chaînes de registre constituées de 36 caractères placés entre des accolades.
  • RASTERLe champ sera de type raster. Les champs raster peuvent stocker des données raster dans ou avec la géodatabase. Tous les formats de jeu de données raster pris en charge par ArcGIS peuvent être stockés, mais il est recommandé de n’utiliser que des images de petite taille.
String
field_length
(Facultatif)

Nouvelle longueur du champ. Définit le nombre maximal de caractères autorisés pour chaque enregistrement du champ. Ce paramètre est uniquement applicable 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. Ce paramètre est applicable uniquement si la table en entrée est vide (ne contient aucun enregistrement).

  • NULLABLELe champ peut contenir des valeurs Null. Il s’agit de l’option par défaut.
  • NON_NULLABLELe champ ne peut pas contenir de valeurs Null.
Boolean
clear_field_alias
(Facultatif)

Indique si l’alias du champ en entrée doit être effacé. Le paramètre new_field_alias 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 obtenue

NomExplicationType de données
out_table

Table en entrée mise à jour.

Table View; Raster Layer; Mosaic Layer

Exemple de code

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

Le script ci-dessous pour la fenêtre Python montre comment utiliser la fonction AlterField en mode immédiat.

import arcpy
arcpy.management.AlterField(
    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 la fonction AlterField dans un script autonome.

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:  # Lloop through each field
        if field.name.lower() == 'elev':  # Look for the name elev
            arcpy.management.AlterField(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 la fonction AlterField sur une classe d’entités vide dans un script autonome.

import arcpy

# Set local variables
in_table = "C:/Data/Garbo.gdb/trails"  # Note: empty feature class
field = "condition_rating"  # short int, non nullable field
new_field_name = "notes"
new_field_alias = "Comments on Trail Condition"
field_type = "TEXT"
field_length = 60
field_is_nullable = "NULLABLE"
clear_field_alias = "FALSE"

# Alter the properties of a non nullable, short data type field to become a text field
arcpy.management.AlterField(in_table,
                            field,
                            new_field_name,
                            new_field_alias,
                            field_type,
                            field_length,
                            field_is_nullable,
                            clear_field_alias)