Connection SQL sans analyse

Posté par Gilles_QC le 3/3/2011 13:07:15
Bonjour,

Je veux developper une application qui me permettrait de faire une requete SQL sur un serveur SQL 2000 (je sais, c'est vieux) sans avoir a decrire les fichiers (ni a les importer dans l'analyse car je veux pourvoir changer de DB si necessaire) dans l'analyse.

Voici ce que je dois faire maintenant, mais c'est assez long comme traitement.


HOuvreConnexion ("ConnexionSQL","UNAME","PWORD","SERVERNAME","DATABASE","SQLOLEDB",hOLecture)

lo_ListefichierSQL est une chaîne = HListeFichier("ConnexionSQL",hLstTable)

lo_FichierExterne est une chaîne
lo_fichier est une chaîne
SQLQueryText est une chaine = "Select * from Produit"

POUR TOUTE CHAINE lo_fichier DE lo_ListefichierSQL SEPAREE PAR RC
SI lo_fichier ~~ "" ALORS CONTINUE
SI ChaîneOccurrence(SQLQueryText,lo_fichier) > 0 ALORS
lo_FichierExterne+= lo_fichier+TAB
FIN
FIN

POUR TOUTE CHAINE lo_fichier DE lo_FichierExterne SEPAREE PAR TAB
SI lo_fichier ~~ "" ALORS CONTINUE
HDéclareExterne(lo_fichier,lo_fichier,"ConnexionSQL")
FIN

MaRequête est une Source de Données
SI PAS HExécuteRequêteSQL(MaRequête,hRequêteSansCorrectionHF,SQLQueryText) ALORS
Erreur("Erreur d'initialisation de la requête"+RC+HErreurInfo(hErrComplet ))
RETOUR
FIN

ConstruitTableFichier(TB_Results, MaRequête, taRemplirTable+taLibelléRubrique)


Cette base de donnee contient des centaines de tables, c'est pour ca que je doit faire une recherche.
Ca fonctionne, mais c'est lent (La declaration externe prend beaucoup de temps).

Question: Y'a pas une facon plus simple de faire?

Merci

Gilles

Cette contribution était de : http://old.wdforge.org/newbb/viewtopic.php?forum=22&topic_id=6551&post_id=25753