Agregar índice de atributos (Administración de datos)

Resumen

Agrega un índice de atributos a una tabla, una clase de entidad, un shapefile o una clase de relación con atributos existente.

ArcGIS utiliza los índices de atributos para localizar rápidamente registros que coincidan con una consulta de atributos.

Uso

  • Los shapefiles y la geodatabase de archivos no admiten varios índices, de manera que los campos adicionales serán parte de un índice compuesto (es decir, un índice creado en varios campos en una tabla).

  • Las geodatabases tienen un nuevo índice agregado para cada nombre de índice único. Si el nombre de un índice ya existe, debe ser eliminado antes de que se pueda actualizar.

  • Para datos de geodatabases corporativas que no están registrados como versionados, puede agregar índices únicos y no únicos en campos de GlobalID.

  • Los índices únicos y ascendentes no se admiten para shapefiles ni para geodatabases de archivos. Estos parámetros se ignoran cuando la herramienta se ejecuta en un shapefile o en datos de geodatabase de archivos.

Parámetros

EtiquetaExplicaciónTipo de datos
Tabla de entrada

Tabla que contiene los campos que se indexarán.

Mosaic Layer; Raster Layer; Table View
De campos a índices

La lista de campos que participará en el índice. Se puede especificar cualquier número de campos.

Field
Nombre del índice
(Opcional)

Nombre del índice nuevo. Se necesita un nombre de índice cuando se agrega un índice a tablas y clases de entidad de geodatabase. En otros tipos de entrada, el nombre se ignora.

String
Única
(Opcional)

Especifica si los valores en el índice son únicos.

  • Desactivada: ningún valor del índice es único. Esta es la opción predeterminada.
  • Activada: todos los valores del índice son únicos.

Boolean
Ascendente
(Opcional)

Especifica si los valores se indexan en orden ascendente.

  • Desactivada: los valores no se indexan en orden ascendente. Esta es la opción predeterminada.
  • Activada: los valores se indexan en orden ascendente.

Boolean

Salida derivada

EtiquetaExplicaciónTipo de datos
Tabla de entrada actualizada

La tabla de entrada actualizada.

Vista de tabla; Capa ráster; Capa de mosaico

arcpy.management.AddIndex(in_table, fields, {index_name}, {unique}, {ascending})
NombreExplicaciónTipo de datos
in_table

Tabla que contiene los campos que se indexarán.

Mosaic Layer; Raster Layer; Table View
fields
[fields,...]

La lista de campos que participará en el índice. Se puede especificar cualquier número de campos.

Field
index_name
(Opcional)

Nombre del índice nuevo. Se necesita un nombre de índice cuando se agrega un índice a tablas y clases de entidad de geodatabase. En otros tipos de entrada, el nombre se ignora.

String
unique
(Opcional)

Especifica si los valores en el índice son únicos.

  • NON_UNIQUENingún valor del índice es único. Esta es la opción predeterminada.
  • UNIQUETodos los valores del índice son únicos.
Boolean
ascending
(Opcional)

Especifica si los valores se indexan en orden ascendente.

  • NON_ASCENDINGLos valores no se indexan en orden ascendente. Esta es la opción predeterminada.
  • ASCENDINGLos valores se indexan en orden ascendente.
Boolean

Salida derivada

NombreExplicaciónTipo de datos
out_table

La tabla de entrada actualizada.

Vista de tabla; Capa ráster; Capa de mosaico

Muestra de código

Ejemplo 1 de AddIndex (ventana de Python)

El código siguiente demuestra cómo usar la función AddIndex en una ventana interactiva de Python.

import arcpy
arcpy.env.workspace = "C:/data/input/indices.sde"
arcpy.AddIndex_management("gdb.USER1.lakes", ["NAME", "geocompID"], "NGIndex", "UNIQUE", "ASCENDING")
Ejemplo 2 de AddIndex (script independiente)

El siguiente script independiente muestra cómo crear un índice de atributos para campos especificados.


# Name: AddAttIndex.py
# Description: Create an attribute Index for specified fields
# Import system modules
import arcpy
 
# Set a default workspace
arcpy.env.workspace = "c:/data"
  
# Create an attribute index for the few fields listed in command.
arcpy.AddIndex_management("counties.shp", ["NAME", "STATE_FIPS", "CNTY_FIPS"], "#", "NON_UNIQUE", "NON_ASCENDING")
arcpy.AddIndex_management("mexico.gdb/land/lakes", ["NAME", "geocompID"], "NGIndex", "NON_UNIQUE", "NON_ASCENDING")

Información de licenciamiento

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

Temas relacionados