Alterar campos (múltiple) (Administración de datos)

Resumen

Altera las propiedades de campo de varios campos de una tabla o clase de entidad.

Uso

    Precaución:

    Esta herramienta modifica los datos de entrada. Consulte Herramientas que modifican o actualizan los datos de entrada para obtener más información y estrategias para evitar cambios de datos no deseados.

  • Esta herramienta le permite cambiar el nombre de campos o alias de campos de una tabla o clase de entidad de geodatabase.

  • Puede utilizar esta herramienta para modificar el alias de campo de una campo de una tabla o vista registrada en la base de datos.

  • Si un campo de entrada es un campo obligatorio, solo es posible modificar el alias del campo.

Parámetros

EtiquetaExplicaciónTipo de datos
Tabla de entrada

Clase de entidad o tabla de geodatabase de entrada que contiene el campo que se modificará.

Table View; Raster Layer; Mosaic Layer
Propiedades del campo
(Opcional)

Campos de la tabla de entrada y sus propiedades que se modificarán.

  • Nombre de campo: nombre del campo que se modificará. Si el campo es un campo obligatorio, solo se modificará el alias del campo.
  • Nuevo nombre de campo (opcional): nuevo nombre para el campo.
  • Nuevo alias de campo (opcional): nuevo alias de campo para el campo.
  • Nuevo tipo de campo (opcional): especifica el nuevo tipo de campo para el campo. Esta columna solo puede aplicarse si la tabla de entrada está vacía (no contiene registros).
  • Nueva longitud de campo (opcional): nueva longitud del campo (tipo largo). Esto establece el número máximo de caracteres permitidos para cada registro del campo. Esta opción solo es aplicable a campos de tipo Texto o BLOB (datos binarios). Si la tabla está vacía, es posible aumentar o disminuir la longitud del campo. Si la tabla no está vacía, la longitud tan solo se puede aumentar respecto del valor actual.
  • Nuevo campo anulable: especifica si el campo puede contener valores nulos. Los valores nulos solo son compatibles con los campos de una geodatabase. Esta opción solo puede aplicarse si la tabla está vacía (no contiene registros). Si está activado, el campo puede contener valores nulos. Esta es la opción predeterminada. Si está desactivado, el campo no puede contener valores nulos.
  • Borrar alias (opcional): especifica si se borrará el alias del campo de entrada. El valor de Nuevo alias de campo debe estar vacío para borrar el alias del campo. Si está activado, el alias del campo se borrará (se establecerá como nulo). Si está desactivado, el alias del campo no se borrará. Esta es la opción predeterminada.

Están disponibles los siguientes tipos de campos:

  • Corto (entero de 16 bits): el tipo de campo será corto. Los campos cortos admiten números enteros entre -32.768 y 32.767.
  • Largo (entero de 32 bits): el tipo de campo será largo. Los campos largos admiten números enteros entre -2.147.483.648 y 2.147.483.647.
  • Entero grande (entero de 64 bits): el tipo de campo será entero grande. Los campos de números enteros grandes admiten números enteros entre -(253) y 253.
  • Flotante (punto flotante de 32 bits): el tipo de campo será flotante. Los campos flotantes admiten números fraccionarios entre -3,4E38 y 1,2E38.
  • Doble (punto flotante de 64 bits): el tipo de campo será doble. Los campos dobles admiten números fraccionarios entre -2,2E308 y 1,8E308.
  • Texto: el tipo de campo será texto. Los campos de texto admiten una cadena de caracteres.
  • Fecha: el tipo de campo será fecha. Los campos de fecha admiten fecha y hora.
  • Fecha (alta precisión): el tipo de campo será fecha de alta precisión. Los campos de fecha de alta precisión admiten valores de fecha y hora con milisegundos.
  • Solo fecha: el tipo de campo será solo fecha. Los campos de solo fecha admiten valores de fecha sin valores de hora.
  • Solo hora: el tipo de campo será solo hora. Los campos de solo hora admiten valores de hora sin valor de fecha.
  • Desfase de marca de tiempo: el tipo de campo será desfase de marca de tiempo. Los campos de desplazamiento de fecha y hora admiten un valor de fecha, hora y desfase con respecto a UTC.
  • Blob (datos binarios): el tipo de campo será BLOB. Los campos BLOB admiten datos almacenados como una secuencia larga de números binarios. Necesita un cargador o un visor personalizado, o una aplicación de terceros, para cargar elementos en un campo BLOB o para visualizar el contenido de un campo BLOB.
  • GUID (identificador único a nivel mundial): el tipo de campo será GUID. Los campos GUID almacenan cadenas de texto de estilo de registro que están compuestas por 36 caracteres encerrados entre paréntesis.
  • Imágenes ráster: el tipo de campo será ráster. Los campos ráster pueden almacenar datos ráster dentro o junto con la geodatabase. Aunque se pueden almacenar todos los formatos de dataset ráster admitidos por el software de ArcGIS, se recomienda utilizar solamente imágenes pequeñas.
Value Table

Salida derivada

EtiquetaExplicaciónTipo de datos
Tabla de entrada actualizada

La tabla de entrada actualizada.

Table View; Raster Layer; Mosaic Layer

arcpy.management.AlterFields(in_table, {field_description})
NombreExplicaciónTipo de datos
in_table

Clase de entidad o tabla de geodatabase de entrada que contiene el campo que se modificará.

Table View; Raster Layer; Mosaic Layer
field_description
[[Field Name, {New Field Name}, {New Field Alias}, {New Field Type}, {New Field Length}, {New Field IsNullable}, {Clear Alias}],...]
(Opcional)

Campos de la tabla de entrada y sus propiedades que se modificarán.

  • Field Name: nombre del campo que se modificará. Si el campo es un campo obligatorio, solo se modificará el alias del campo.
  • New Field Name (opcional): nuevo nombre para el campo.
  • New Field Alias (opcional): nuevo alias de campo para el campo.
  • New Field Type (opcional): especifica el nuevo tipo de campo para el campo. Esta opción solo puede aplicarse si la tabla de entrada está vacía (no contiene registros).
  • New Field Length (opcional): nueva longitud del campo. Esto establece el número máximo de caracteres permitidos para cada registro del campo. Esta opción solo puede aplicarse a campos de tipo TEXT o BLOB. Si la tabla está vacía, es posible aumentar o disminuir la longitud del campo. Si la tabla no está vacía, la longitud tan solo se puede aumentar respecto del valor actual.
  • New Field IsNullable (opcional): especifica si el campo puede contener valores nulos. Los valores nulos solo son compatibles con los campos de una geodatabase. Esta opción solo puede aplicarse si la tabla está vacía (no contiene registros). Si se establece en True, el campo puede contener valores nulos. Esta es la opción predeterminada. Si se establece en False, el campo no puede contener valores nulos.
  • Clear Alias (opcional): especifica si se borrará el alias del campo de entrada. El valor de New Field Alias debe estar vacío para borrar el alias del campo. Si se establece en True, el alias del campo se borrará (se establecerá como nulo). Si se establece en False, el alias del campo no se borrará). Esta es la opción predeterminada.

Están disponibles los siguientes tipos de campos:

  • SHORT: el tipo de campo será corto. Los campos cortos admiten números enteros entre -32.768 y 32.767.
  • LONG: el tipo de campo será largo. Los campos largos admiten números enteros entre -2.147.483.648 y 2.147.483.647.
  • BIGINTEGER: el tipo de campo será entero grande. Los campos de números enteros grandes admiten números enteros entre -(253) y 253.
  • FLOAT: el tipo de campo será flotante. Los campos flotantes admiten números fraccionarios entre -3,4E38 y 1,2E38.
  • DOUBLE: el tipo de campo será doble. Los campos dobles admiten números fraccionarios entre -2,2E308 y 1,8E308.
  • TEXT: el tipo de campo será texto. Los campos de texto admiten una cadena de caracteres.
  • DATE: el tipo de campo será fecha. Los campos de fecha admiten fecha y hora.
  • DATEHIGHPRECISION: el tipo de campo será la fecha de alta precisión. Los campos de fecha de alta precisión admiten valores de fecha y hora con milisegundos.
  • DATEONLY: el tipo de campo será solo fecha. Los campos de solo fecha admiten valores de fecha sin valores de hora.
  • TIMEONLY: el tipo de campo será solo hora. Los campos de solo hora admiten valores de hora sin valor de fecha.
  • TIMESTAMPOFFSET: el tipo de campo será desfase de marca de tiempo. Los campos de desplazamiento de fecha y hora admiten un valor de fecha, hora y desfase con respecto a UTC.
  • BLOB: el tipo de campo será BLOB. Los campos BLOB admiten datos almacenados como una secuencia larga de números binarios. Necesita un cargador o un visor personalizado, o una aplicación de terceros, para cargar elementos en un campo BLOB o para visualizar el contenido de un campo BLOB.
  • GUID: el tipo de campo será GUID. Los campos GUID almacenan cadenas de texto de estilo de registro que están compuestas por 36 caracteres encerrados entre paréntesis.
  • RASTER: el tipo de campo será ráster. Los campos ráster pueden almacenar datos ráster dentro o junto con la geodatabase. Aunque se pueden almacenar todos los formatos de dataset ráster admitidos por el software de ArcGIS, se recomienda utilizar solamente imágenes pequeñas.

Value Table

Salida derivada

NombreExplicaciónTipo de datos
out_table

La tabla de entrada actualizada.

Table View; Raster Layer; Mosaic Layer

Muestra de código

Ejemplo 1 de AlterFields (secuencia de comandos independiente)

La siguiente secuencia de comandos independiente muestra cómo utilizar la función AlterFields para modificar los alias de campo de los campos de una clase de entidad.

import arcpy

test_class = arcpy.management.CreateFeatureclass(out_gdb, "new_fc", geometry_type='POLYGON')
field_description = [
    ['SHORT_FIELD', 'SHORT', 'SHORT_FIELD_Alias', '#', '#', '#'],
    ['LONG_FIELD', 'LONG', 'LONG_FIELD_Alias', '#', '#', '#'],
    ['BIGINTEGER_FIELD', 'BIGINTEGER', 'BIGINTEGER_FIELD_Alias', '#', '#', '#'], 
    ['FLOAT_FIELD', 'FLOAT', 'FLOAT_FIELD_Alias', '#', '#', '#'],
    ['DOUBLE_FIELD', 'DOUBLE', 'DOUBLE_FIELD_Alias', '#', '#', '#'],
    ['TEXT_FIELD', 'TEXT', 'TEXT_FIELD_Alias', '#', '#', '#'],
    ['DATE_FIELD', 'DATE', 'DATE_FIELD_Alias', '#', '#', '#'],
    ['DATEONLY_FIELD', 'DATEONLY', 'DATEONLY_FIELD_Alias', '#', '#', '#'],
    ['TIMEONLY_FIELD', 'TIMEONLY', 'TIMEONLY_FIELD_Alias', '#', '#', '#'],
    ['TIMESTAMPOFFSET_FIELD', 'TIMESTAMPOFFSET', 'TIMESTAMPOFFSET_FIELD_Alias', '#', '#', '#']
]
arcpy.management.AddFields(test_class, field_description, None)

alter_field_description = [
    ['SHORT_FIELD', 'SHORT_FIELD_altered', '#', '#', '#', '#'],
    ['LONG_FIELD', 'LONG_FIELD_altered', '#', '#', '#', '#'],
    ['BIGINTEGER_FIELD', 'BIGINTEGER_FIELD_altered', '#', '#', '#', '#'],
    ['FLOAT_FIELD', 'FLOAT_FIELD_altered', '#', '#', '#', '#'],
    ['DOUBLE_FIELD', 'DOUBLE_FIELD_altered', '#', '#', '#', '#'],
    ['TEXT_FIELD', 'TEXT_FIELD_altered', '#', '#', '#', '#'],
    ['DATE_FIELD', 'DATE_FIELD_altered', '#', '#', '#', '#'],
    ['DATEONLY_FIELD', 'DATEONLY_FIELD_altered', '#', '#', '#', '#'],
    ['TIMEONLY_FIELD', 'TIMEONLY_FIELD_altered', '#', '#', '#', '#'],
    ['TIMESTAMPOFFSET_FIELD', 'TIMESTAMPOFFSET_FIELD_altered', '#', '#', '#', '#']
]
arcpy.management.AlterFields(in_table=test_class, field_description=alter_field_description)
Ejemplo 2 de AlterFields (secuencia de comandos independiente)

El siguiente script independiente muestra cómo utilizar la función AlterFields para modificar la propiedad "is nullable field" de los campos de una tabla vacía.

import arcpy

test_class = arcpy.management.CreateTable(out_gdb, "new_table")
field_description = [
    ['SHORT_FIELD', 'SHORT', 'SHORT_FIELD_Alias', '#', '#', '#'],
    ['LONG_FIELD', 'LONG', 'LONG_FIELD_Alias', '#', '#', '#'],
    ['BIGINTEGER_FIELD', 'BIGINTEGER', 'BIGINTEGER_FIELD_Alias', '#', '#', '#'],
    ['FLOAT_FIELD', 'FLOAT', 'FLOAT_FIELD_Alias', '#', '#', '#'],
    ['DOUBLE_FIELD', 'DOUBLE', 'DOUBLE_FIELD_Alias', '#', '#', '#'],
    ['TEXT_FIELD', 'TEXT', 'TEXT_FIELD_Alias', '#', '#', '#'],
    ['DATE_FIELD', 'DATE', 'DATE_FIELD_Alias', '#', '#', '#'],
    ['DATEONLY_FIELD', 'DATEONLY', 'DATEONLY_FIELD_Alias', '#', '#', '#'],
    ['TIMEONLY_FIELD', 'TIMEONLY', 'TIMEONLY_FIELD_Alias', '#', '#', '#'],
    ['TIMESTAMPOFFSET_FIELD', 'TIMESTAMPOFFSET', 'TIMESTAMPOFFSET_FIELD_Alias', '#', '#', '#']
]

arcpy.management.AddFields(test_class, field_description, None)

# Change the nullable property to true
alter_field_description = [
    ['SHORT_FIELD', '#', '#', '#','#', 'true', '#'],
    ['LONG_FIELD', '#', '#', '#','#', 'true', '#'],
    ['BIGINTEGER_FIELD', '#', '#', '#','#', 'true', '#'],
    ['FLOAT_FIELD', '#', '#', '#','#', 'true', '#'],
    ['DOUBLE_FIELD', '#', '#', '#','#', 'true', '#'],
    ['TEXT_FIELD', '#', '#', '#','#', 'true', '#'],
    ['DATE_FIELD', '#', '#', '#','#', 'true', '#'],
    ['DATEONLY_FIELD', '#', '#', '#','#', 'true', '#'],
    ['TIMEONLY_FIELD', '#', '#', '#','#', 'true', '#'],
    ['TIMESTAMPOFFSET_FIELD', '#', '#', '#','#', 'true', '#']
]

arcpy.management.AlterFields(in_table=test_class, field_description=alter_field_description)

Información de licenciamiento

  • Basic: Sí
  • Standard: Sí
  • Advanced: Sí

Temas relacionados