DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Gestion des bases de données / HFSQL / Fonctions HFSQL
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Réorganise la structure interne des index pour optimiser la vitesse d'accès aux données. Basée sur la fonction HStatCalcule, cette fonction réalise diverses statistiques sur les clés d'un fichier de données.
Quand utiliser la fonction HAccélèreVitesse ?
Cette fonction peut être utilisée aussi souvent que désirée mais il est conseillé de l'utiliser après un ensemble d'ajouts (en général, après un ensemble d'ajouts correspondant au moins à 1 pour mille du nombre d'enregistrements de la base de données).
Remarque : Pour un calcul de statistiques efficace, il est nécessaire de réaliser ce calcul sur tous les fichiers de données (par exemple dans le cas d'une requête multi-fichiers).
Attention : Cette fonction ne doit pas être utilisée systématiquement dans le code d'initialisation du projet. En effet, l'optimisation de la vitesse d'accès aux données pouvant prendre du temps, les différents utilisateurs pourraient être ralentis.
Comment fonctionne la fonction HAccélèreVitesse ?
Les statistiques sur les clés d'un fichier de données sont utilisées lors de la pose d'un filtre, la création d'une requête ou encore la création d'une vue sur le fichier de données. Le moteur HFSQL analyse la condition de sélection et s'appuie ensuite sur ces statistiques pour déterminer les rubriques les plus discriminantes qui permettront d'optimiser les parcours des fichiers de données.
Les statistiques permettent d'avoir des informations sur le contenu du fichier de données au moment de leur calcul. Après le calcul des statistiques :
  • Plus le fichier de données est modifié, moins les statistiques sont fidèles au contenu du fichier de données.
  • Plus le fichier de données contient d'enregistrements et moins la modification d'un enregistrement a d'impact sur les statistiques.
Attention : La fonction HAccélèreVitesse bloque le fichier de données en écriture pendant le calcul des statistiques (un parcours du fichier est effectué pour chaque clé du fichier).
HFSQL Client/Serveur Il est possible de réaliser le calcul des statistiques en tâche de fond, sans bloquer le fichier de données en écriture.
Exemple
// Réorganise le fichier de données Client sur la clé NomCli
HAccélèreVitesse(Client, NomCli)
Syntaxe
<Résultat> = HAccélèreVitesse([<Fichier de données> [, <Rubrique clé> [, <Optimisation>]]])
<Résultat> : Booléen
  • Vrai si la réorganisation des index a été effectuée,
  • Faux en cas de problème (fichier bloqué par une application par exemple). La fonction HErreur permet d'identifier l'erreur.
<Fichier de données> : Chaîne de caractères optionnelle
Nom du fichier de données manipulé. Si ce nom n'est pas spécifié, la fonction HAccélèreVitesse va manipuler le dernier fichier de données utilisé par la dernière fonction de gestion HFSQL (fonction commençant par la lettre H).
Si ce paramètre est égal à "*" (sans préciser de rubrique), l'opération sera réalisée sur tous les fichiers de données décrits dans l'analyse en cours (y compris les fichiers de données décrits avec les fonctions HDéclare, HDéclareExterne, HDécritFichier).
Attention : Ce fichier de données ne doit pas être bloqué par une application.
<Rubrique clé> : Chaîne de caractères optionnelle
Nom de la rubrique clé permettant de réorganiser les index. Si ce nom n'est pas spécifié ou est égal à "*", la réorganisation des index sera réalisée sur toutes les rubriques clé du fichier de données.
<Optimisation> : Constante de type Entier
HFSQL Client/Serveur Permet d'optimiser la réorganisation des index pour des fichiers HFSQL Client/Serveur.
Si ce paramètre n'est pas précisé, le fichier de données manipulé sera bloqué en écriture.
Si ce paramètre correspond à la constante hTâcheDeFond, la réorganisation des index sera effectuée en tâche de fond, sans bloquer le fichier de données.
Important : Ce paramètre est pris en compte uniquement pour des fichiers HFSQL Client/Serveur. Dans tous les autres cas, le fichier est automatiquement bloqué pendant le calcul des statistiques.
Remarques
  • La fonction HAccélèreVitesse ne ferme pas le fichier de données.
  • La réorganisation des index peut également être réalisée par la fonction HRéindexe ou la fonction HStatCalcule.
  • Dans les fichiers de données HFSQL Classic ou Client/Serveur, seules les rubriques clés peuvent faire l'objet d'une réorganisation des index.
  • La syntaxe HAccélèreVitesse(<Fichier de données>) est équivalente à HAccélèreVitesse(<Fichier de données>, "*")
Classification Métier / UI : Code métier
Composante : wd290hf.dll
Version minimum requise
  • Version 16
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 20/06/2023

Signaler une erreur ou faire une suggestion | Aide en ligne locale