4D v16.3

SET INDEX

Inicio

 
4D v16.3
SET INDEX

SET INDEX 


 

SET INDEX ( unCampo ; index {; modo} {; *} )  
Parámetro Tipo   Descripción
unCampo  Campo in Campo del cual crear o borrar el índice
index  Booleano, Entero in • True=Crear el índice, False=Borrar el índice, o • Crear un índice de tipo: -1=palabras claves, 0=por defecto, 1=B-Tree estándar, 3=B-Tree cluster
modo  Entero largo in Obsoleto (parámetro ignorado)
in Si se pasa * indexación asincrónica

Nota de compatibilidad: este comando se conserva por razones de compatibilidad únicamente. Ahora recomendamos el uso de los comandos CREATE INDEX y DELETE INDEX para la gestión de índices por programación.

El comando SET INDEX acepta dos sintaxis:

  • Si pasa un booleano en el parámetro index, el comando crea o borra el índice de campo.
  • Si pasa un entero el parámetro index, el comando crea un índice del tipo especificado.
index = Booleano

Para indexar el campo, pase True en index. El comando crea un índice del tipo por defecto. Si el índice ya existe, el comando no hace nada.
Si pasa False en index, el comando borrará todos los índices estándar (es decir, no compuestos ni palabras claves) asociados al campo. Si el índice no existe, el comando no hace nada.

index = Entero
En este caso, el comando crea un índice del tipo especificado por campo. Puede pasar una de las siguientes constantes, que se encuentran en el tema “Tipo de índice”:

Constante Tipo Valor Comentario
Cluster BTree Index Entero largo 3 Índice de tipo B-Tree utilizando clusters. Este tipo de índice se optimiza cuando el índice contiene pocas palabras claves, es decir cuando los mismos valores se presentan con frecuencia en los datos.
Default Index Type Entero largo 0 4D define el tipo de índice (excepto los índices de palabras claves) que es el más optimizado en función del contenido del campo.
Keywords Index Entero largo -1 Permite la indexación palabra por palabra del contenido del campo. Este tipo de índice sólo puede utilizarse con campos de tipo Texto o Alfa.
Standard BTree Index Entero largo 1 Índice de tipo B-Tree clásico. Este tipo de índice multi propósito se utiliza en las versiones anteriores de 4D

Nota: un índice B-Tree asociado a un campo de tipo texto almacena como máximo los primeros 1024 caracteres del campo. Por lo tanto en este contexto, las búsquedas en las cadenas que contengan más de 1024 caracteres fallarán.

SET INDEX no indexará registros bloqueados; el comando esperará a que el registro sea desbloqueado.

A partir de la versión 11, el parámetro modo no sirve y si se pasa es ignorado.

El parámetro opcional * indica una indexación asincrónica (simultánea). Una indexación asincrónica permite al método llamante continuar su ejecución inmediatamente después de la llamada, bien sea que la indexación haya terminado o no. Sin embargo, la ejecución se detendrá si un comando requiere la indexación.

Notas:

  • Los índices creados por este comando no tienen nombres. No pueden ser borrados por el comando DELETE INDEX utilizando la sintaxis basada en el nombre.
  • Este comando no permite crear o borrar índices compuestos.
  • Este comando no permite  borrar un índice de palabras claves creado por el comando CREATE INDEX.

El siguiente ejemplo indexa el campo [Clientes]ID:

 UNLOAD RECORD([Clientes])
 SET INDEX([Clientes]ID;True)

Usted quiere indexar el campo [Clientes]Nombre en modo asincrónico:

 SET INDEX([Clientes]Nombre;True;*)

Creación de un índice de palabras claves:

 SET INDEX([Libros]Summary;Keywords Index)



Ver también 

CREATE INDEX
DELETE INDEX
GET FIELD PROPERTIES
ORDER BY
QUERY

 
PROPIEDADES 

Producto: 4D
Tema: Estructura
Número 344

This command can be run in preemptive processes

 
HISTORIA 

Modificado: 4D v11 SQL

 
ARTICLE USAGE

Manual de lenguaje 4D ( 4D v16)
Manual de lenguaje 4D ( 4D v16.1)
Manual de lenguaje 4D ( 4D v16.2)
Manual de lenguaje 4D ( 4D v16.3)