4D v16.3

DECRIRE EXECUTION RECHERCHE

Accueil

 
4D v16.3
DECRIRE EXECUTION RECHERCHE

DECRIRE EXECUTION RECHERCHE 


 

DECRIRE EXECUTION RECHERCHE ( statut ) 
Paramètre Type   Description
statut  Booléen in Vrai=Enregistrer la description des requêtes, Faux=Stopper l'enregistrement

La commande DECRIRE EXECUTION RECHERCHE permet d’activer ou d’inactiver le mode d’analyse de l’exécution des recherches pour le process courant. La commande fonctionne uniquement dans le contexte des commandes de recherche du langage 4D telles que CHERCHER.

L’appel de la commande avec le paramètre statut à Vrai active le mode d’analyse des recherches. Dans ce mode, le moteur de 4D enregistrera en interne deux séries d’informations spécifiques lors de chaque requête effectuée par la suite sur les données :

  • la description détaillée de la recherche juste avant son exécution, c’est-à-dire la recherche prévue (le plan de recherche),
  • la description détaillée de la recherche telle qu’elle a réellement été exécutée (le chemin de recherche).

Les informations enregistrées incluent le type de recherche (indexée, séquentielle), le nombre d’enregistrements trouvés et le temps nécessaire à l’exécution de chaque critère de recherche. Vous pouvez ensuite lire ces informations à l’aide des commandes Lire dernier plan recherche et Lire dernier chemin recherche.

En général, la description du plan d’une recherche et celle de son chemin sont identiques, mais elles peuvent toutefois différer car 4D peut mettre en oeuvre des optimisations dynamiques au cours de l’exécution de la recherche, dans le but d’améliorer les performances. Par exemple, une recherche indexée peut être convertie dynamiquement en recherche séquentielle si le moteur de 4D estime qu’elle sera plus rapide — c’est le cas notamment lorsque le nombre d’enregistrements parmi lesquels effectuer la recherche est faible.

Passez Faux dans le paramètre statut lorsque vous n’avez plus besoin d’analyser les recherches. Le mode d’analyse de l’exécution des recherches peut ralentir l’application.

Exemple  

L’exemple suivant illustre le type d’information obtenue via ces commandes :

 C_TEXTE($vResultPlan;$vResultPath)
 DECRIRE EXECUTION RECHERCHE(Vrai)  //mode analyse
 CHERCHER([Employés];[Employés]Nom="T@";*)  // Chercher les employés dont le nom débute par T...
 CHERCHER([Employés]; & ;[Sociétés]Nom="H@";*) // travaillant pour une société dont le nom débute par H
 CHERCHER([Employés]; & ;[Employés]Salaire>2500;*) // dont le salaire est > 2500
 CHERCHER([Employés]; & ;[Villes]nbHab<50000)  // habitant dans une ville de moins de 50000 habitants
 $vResultPlan:=Lire dernier plan recherche(Description format Texte)
 $vResultPath:=Lire dernier chemin recherche(Description format Texte)
 DECRIRE EXECUTION RECHERCHE(Faux)  //Fin du mode analyse

A l’issue de l’exécution de ce code, $vResultPlan et $vResultPath contiennent les descriptions des recherches effectuées, par exemple :

$vResultPlan :
   Employés.Nom == T@ And Employés.Salaire > 2500 And Join on Table : Sociétés  :  Employés.Société = Sociétés.Nom [index : Sociétés.Nom ] LIKE H@ And Join on Table : Villes  :  Employés.Ville = Villes.Nom [index : Villes.nbHab ] < 50000
$vResultPath :
(Employés.Nom == T@ And Employés.Salaire > 2500) And (Join on Table : Sociétés  :  Employés.Société = Sociétés.Nom with filter {[index : Sociétés.Nom ] LIKE H@}) And (Join on Table : Villes  :  Employés.Ville = Villes.Nom with filter {[index : Villes.nbHab ] < 50000})   (3 records found in 1 ms)

Si la constante Description format XML est passée à la commande Lire dernier chemin recherche, $vResultPath contient la description de la recherche exprimée en XML :

$vResultPath : 
   <QueryExecution>
      <steps description="And" time="0" recordsfounds="1227">
         <steps description="[Merge] : ACTORS with CITIES" time="13" recordsfounds="1227">
            <steps  description="[Join] : ACTORS.Birth_City_ID =CITIES.City_ID" time="13"  recordsfounds="1227"/>
         </steps>
      </steps>
   </QueryExecution>



Voir aussi  

Lire dernier chemin recherche
Lire dernier plan recherche

 
PROPRIÉTÉS 

Produit : 4D
Thème : Recherches et tris
Numéro : 1044
Nom intl. : DESCRIBE QUERY EXECUTION

Commande(s) éligible(s) à l'exécution dans un process préemptif

 
HISTORIQUE 

Créé : 4D v11 SQL Release 1

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v16)
4D - Langage ( 4D v16.1)
4D - Langage ( 4D v16.2)
4D - Langage ( 4D v16.3)