FORUMS PROFESSIONNELS
WINDEV
,
WEBDEV
et
WINDEV Mobile
Accueil
|
Messages récents
|
Connexion
|
Déconnexion
|
Français
Accueil
→
WINDEV 2024
→
Méthode la plus performante pour trouver un enregistrement ?
Méthode la plus performante pour trouver un enregistrement ?
Débuté par Dergen, 20 sep. 2018 22:26 - 4 réponses
Connectez-vous…
Dergen
#1
Membre enregistré
329 messages
Popularité : +28 (32 votes)
Posté le 20 septembre 2018 - 22:26
Bonsoir,
Je dois (dans une boucle qui parcours un ensemble de fichier XML), rechercher pour certaine balises particulières des données complémentaire propre à chaque balise depuis une table ORACLE.
Si dans ma boucle j’execute (a chaque itération) ma requête parametrés, le programme est fortement ralenti par cette accumulation de requêtes.
J’ai cherché à optimiser le traitement en faisant en amont une requête globale et dans chaque itération de ma boucle, j’execute Un HRecherche afin de trouver mes données complèmentaire, il y a du mieux en terme de temps de traitement mais c’est loin d’etre folichon...
Avez-vous une idée qui me permettrait d’optimise ma boucle ?
Signaler
0
0
MICHEL
#2
Membre enregistré
299 messages
Popularité : +16 (16 votes)
Posté le 21 septembre 2018 - 08:45
Un moyen que j'utilise dans ce genre de cas est le suivant :
Dans un premier temps je construis une chaine contenant les identifiants des lignes à extraire:
J'obtiens donc une chaine de type : LC_Liste = "25,32,63,93,etc"
A partir de là je fais ma requète d'extraction
LC_SQL = "select Champ1, Champ2 from MaTable where ID in (" + LC_Liste + "')"
Une fois la requète exécutée je construis un tableau avec les données récupérées
Le reste du traitement s'exécute en mémoire.
Signaler
0
0
Damien
#3
Membre enregistré
281 messages
Popularité : +24 (26 votes)
Posté le 21 septembre 2018 - 10:27
Bonjour,
Pourquoi ne pas stocker les résultats dans un tableau ?
Signaler
0
0
MICHEL
#4
Membre enregistré
299 messages
Popularité : +16 (16 votes)
Posté le 21 septembre 2018 - 11:16
"Pourquoi ne pas stocker les résultats dans un tableau "
C'est ce que j'ai proposé.
Pour remplir le tableau il faut ne sélectionner QUE les valeurs utiles
Signaler
0
0
Dergen
#5
Membre enregistré
329 messages
Popularité : +28 (32 votes)
Posté le 22 septembre 2018 - 23:34
Je sélectionne déjà les données utile avec ma requête paramètrés.
C’est la localisation dedans que je cherche à optimiser, parceque HRecherche est pas optimum dans une boucle.
Message modifié, 22 septembre 2018 - 23:36
Signaler
0
0
→ Revenir à WINDEV 2024
WINDEV 2024
WEBDEV 2024
WINDEV Mobile 2024
WINDEV (précédentes versions)
WEBDEV (précédentes versions)
WINDEV Mobile (précédentes versions)
Etats & Requêtes
Hors-sujet
Outils
Français
English
Español
Portuguesa
Fermer cette fenêtre
Type de recherche
Uniquement les sujets
Tous les messages
Période de recherche
Date indifférente
Moins d'une heure
Moins de 24 heures
Moins d'une semaine
Moins d'un mois
Moins d'un an
Annuler
Aperçu de votre message
Ajouter une image
Importer une image depuis une URL
Envoyer une image depuis un fichier de votre disque
Déposez ici un fichier ou cliquez sur "Parcourir..."
ou
Annuler
0%
WLangage
SQL
XML, HTML
JAVA, Javascript
Texte