Comment accélérer une importation massive de données dans un fichier HFSQL ?
Il n'est pas rare d'être amené à importer des données existantes d'une origine quelconque (fichier texte, csv, accès OLE DB ou ODBC, ...). Lorsque plusieurs dizaines de milliers d'enregistrements doivent être ajoutés, le coût de chaque "HAjoute()" peut être important de part la mise à jour des index.
Une optimisation significative peut être obtenue en utilisant la fonction "HEcrit()" en lieu et place de "HAjoute()". De cette manière chaque enregistrement est... |
|
|
|
|
|
Optimisations HFSQL Client/Serveur : Création des clés nécessaires à ma requête.
Les requêtes HFSQL s'exécutent dans des threads séparés du thread principal de votre application. Cela permet par exemple d'afficher des enregistrements dans une table liée à la requête avant que la requête ne soit totalement exécutée (fetch partiel). Pour que ce mécanisme soit efficace, il est nécessaire que le moteur puisse utiliser une clé de parcours qui soit discriminante à la fois sur la sélection mais également sur le tri.
Reprenons l'... |
|
|
|
|
|
|
Optimisations HFSQL Client/Serveur : Limiter les rubriques d'une requête.
Si le traitement durésultat de votre requête utilise uniquement les rubriques NOM et PRENOM, ilfaut mettre uniquement ces deux rubriques dans celle affiché par la requête.
Eneffet plus il y a de rubriques dans la requête, plus la quantité de données transférévia le réseau et stockée en mémoire sur le poste client est importante.
Si vous n'utilisez que très rarement une rubrique mémo en exploitant le contenu de la requête. Il peut être... |
|
|
|
|
|
Optimisations HFSQL Client/Serveur : Limiter le nombre d'enregistrements à afficher dans une table.
Lorsqu'une table est basée sur une requête, l'exécution de la requête peut être faite de manière automatique par WinDev lors de l'initialisation de la table. En effet, si WinDev détecte que la requête n'a pas été exécutée, il lancera une exécution automatique pour éviter une erreur de votre programme.
Pensez à renseigner des valeurs de sélection par défaut dans le code d'initialisation de votre table. Il ne sert à... |
|
|
|
|
|
|
|
|