Vous êtes sur le site Web historique de la documentation de 4D. Les documentations sont progressivement déplacées vers developer.4d.com |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
FIXER INDEX
|
FIXER INDEX ( leChamp ; index {; *} ) | ||||||||
Paramètre | Type | Description | ||||||
leChamp | Champ |
![]() |
Champ duquel créer ou supprimer l’index | |||||
index | Booléen, Entier |
![]() |
• Vrai=Créer l’index, Faux=Supprimer l’index, ou • Créer un index de type : -1=mots-clés, 0=par défaut, 1=B-Tree standard, 3=B-Tree cluster |
|||||
* |
![]() |
Indexation asynchrone si * est passé | ||||||
Bien que FIXER INDEX soit une ancienne commande, elle reste entièrement prise en charge et peut être conservée dans votre application -- il n'est pas nécessaire de réécrire le code existant. Toutefois, il est désormais préférable d'utiliser les commandes CREER INDEX et SUPPRIMER INDEX pour gérer les index car elles ont des fonctionnalités plus étendues.
La commande FIXER INDEX admet deux syntaxes :
index = booléen
Pour indexer le champ, passez Vrai dans index. La commande crée un index du type par défaut. Si l'index existe déjà, la commande ne fait rien.
Si vous passez Faux dans index, la commande supprimera tous les index standard (c'est-à-dire, non composites et non mots-clés) associés au champ. S'il n'existe pas d'index, la commande ne fait rien.
index = entier
Dans ce cas, la commande crée un index du type spécifié pour leChamp. Vous pouvez passer une des constantes suivantes, placées dans le thème “Type index” :
Constante | Type | Valeur | Comment |
Index BTree cluster | Entier long | 3 | Index de type B-Tree utilisant des clusters. Ce type d’index est optimisé lorsque l’index contient peu de clés, c’est-à-dire lorsque les mêmes valeurs reviennent souvent dans les données. |
Index BTree standard | Entier long | 1 | Index de type B-Tree classique. Ce type d’index polyvalent est utilisé dans les versions précédentes de 4D |
Index de mots clés | Entier long | -1 | Permet l’indexation mot à mot du contenu du champ. Ce type d’index n’est utilisable qu’avec les champs de type Texte ou Alpha. Attention, les index de mots-clés ne peuvent pas être composites. |
Type index par défaut | Entier long | 0 | 4D définit le type d’index (hors index de mots-clés) le plus optimisé en fonction du contenu du champ. |
Note : Un index B-Tree associé à un champ de type texte stocke au maximum les 1024 premiers caractères du champ. Par conséquent dans ce contexte, les recherches sur des chaînes contenant plus de 1024 caractères ne pourront aboutir.
FIXER INDEX n'indexera pas les enregistrements verrouillés ; la commande attendra que les enregistrements soient libérés.
Le paramètre optionnel * indique une indexation asynchrone (simultanée). Une indexation asynchrone permet à la méthode appelante de poursuivre son exécution immédiatement après l'appel, que l'indexation soit terminée ou non. Cependant, l'exécution sera stoppée si une commande requiert l'index.
Notes :
Étant donné que cette commande modifie la structure de la base de données, elle ne peut pas être utilisée dans une application packagée en lecture seule (fichier .4dc installé dans le dossier Program Files ou fichier .4dz).
L'exemple suivant indexe le champ [Clients]Num :
LIBERER ENREGISTREMENT([Clients])
FIXER INDEX([Clients]Num;Vrai)
Vous souhaitez indexer le champ [Clients]Nom, en mode asynchrone :
FIXER INDEX([Clients]Nom;Vrai;*)
Création d'un index de mots-clés :
FIXER INDEX([Livres]Résumé;Index de mots clés)
CHERCHER
CREER INDEX
LIRE PROPRIETES CHAMP
SUPPRIMER INDEX
TRIER
Produit : 4D
Thème : Définition structure
Numéro :
344
Nom intl. : SET INDEX
Modifié : 4D v11 SQL
4D - Langage ( 4D v20 R7)