[R] Requête Vue MSSQL
Posté : mar. 04 nov. 2014 18:07
Bonjour,
Je tourne en rond depuis plusieurs jours sur une requête qui me semble pourtant simple et que j'effectue sans problème depuis bien longtemps, à la seule différence que j'effectue cette requête sur une vue et pas sur des tables...
Voici mon code :
La requête d'origine (appel de 9 tables avec jointures) ne me remontait aucun enregistrement dans autoit, alors qu'elle fonctionnait correctement sur SQL Manager.
Dans un premier temps j'ai découpé cette requête en 4 parties, qui me remontaient chacune des enregistrements... Mais cela m'obligeait à créer les jointures avec Autoit, là ou la requête d'origine se générait en une dizaine de secondes.
J'ai donc utilisé une vue qui se génère également correctement dans SQL server.
Mon problème est que les fonctions RecordCount et Fields.Count remontent le nombre de résultats corrects (respectivement 94 et 15), mais EOF et BOF sont tous deux à True, ce qui signifie que la requête n'a remonté aucun résultat (et c'est à ce moment là que je crie à mon ordi : Mais bien sur que si ! Tu viens de me dire qu'il y a 94 résultats !!!
).
J'ai tenté de restructurer la manière de faire mes requêtes en utilisant les objets Command et en utilisant la fonction Execute directement sur l'objet Connection, pensant que le problème venait peut-être des objets RecordSet qui ne supportaient pas de requêter des vues, mais sans plus de succès... Je me suis renseigné sur les objets ADO depuis 2 jours, sans trouver de solution... Ni comprendre pourquoi mon code réagit ainsi...
Merci d'avance pour vos réponses ou pistes de recherche...
Je tourne en rond depuis plusieurs jours sur une requête qui me semble pourtant simple et que j'effectue sans problème depuis bien longtemps, à la seule différence que j'effectue cette requête sur une vue et pas sur des tables...
Voici mon code :
► Afficher le texte
Dans un premier temps j'ai découpé cette requête en 4 parties, qui me remontaient chacune des enregistrements... Mais cela m'obligeait à créer les jointures avec Autoit, là ou la requête d'origine se générait en une dizaine de secondes.
J'ai donc utilisé une vue qui se génère également correctement dans SQL server.
Mon problème est que les fonctions RecordCount et Fields.Count remontent le nombre de résultats corrects (respectivement 94 et 15), mais EOF et BOF sont tous deux à True, ce qui signifie que la requête n'a remonté aucun résultat (et c'est à ce moment là que je crie à mon ordi : Mais bien sur que si ! Tu viens de me dire qu'il y a 94 résultats !!!
J'ai tenté de restructurer la manière de faire mes requêtes en utilisant les objets Command et en utilisant la fonction Execute directement sur l'objet Connection, pensant que le problème venait peut-être des objets RecordSet qui ne supportaient pas de requêter des vues, mais sans plus de succès... Je me suis renseigné sur les objets ADO depuis 2 jours, sans trouver de solution... Ni comprendre pourquoi mon code réagit ainsi...
Merci d'avance pour vos réponses ou pistes de recherche...