[VB+Access] Probleme de requete

Résolu
Bonjour,

je fais une petite appli en VB pour gerer une liste de declarations stockées dans une BD Access. J'ai un petit probleme qui me laisse reellement perplexe : ma requete pour afficher toutes les declarations marche bien sous Access, mais pas sous VB :ouch:

Description de mes tables :

ZONE(Num_Zone, Nom) avec cle primaire : Num_Zone
IMPORTANCE(Num_Importance, Importance) avec cle primaire : Num_Importance
DECLARATION(Num_Declaration, Lieu, Date, Declarant, Risque, Date_Debut, Date_Fin, Delai, Action, Num_Zone, Num_Importance) avec cle primaire : Num_Declaration et cles secondaires : Num_Zone et Num_Importance

sur mon Formulaire VB, j'ai mis une Datagrid dont la source est la requete en question :

SELECT DECLARATION.Num_Declaration, DECLARATION.Lieu, DECLARATION.Date, DECLARATION.Declarant, DECLARATION.Risque, DECLARATION.Date_Debut, DECLARATION.Date_Fin, DECLARATION.Delai, DECLARATION.Action, DECLARATION.Num_Zone, ZONE.Nom, DECLARATION.Num_Importance, IMPORTANCE.Importance FROM DECLARATION, IMPORTANCE, ZONE WHERE ZONE.Num_Zone = DECLARATION.Num_Zone AND IMPORTANCE.Num_Importance = DECLARATION.Num_Importance ORDER BY DECLARATION.Num_Declaration;

Le code de VB :

Dim rsSituations As ADODB.Recordset
Dim Requete As String
    
    Requete = "SELECT DECLARATION.Num_Declaration, DECLARATION.Lieu, DECLARATION.Date, DECLARATION.Declarant, DECLARATION.Risque, DECLARATION.Date_Debut, DECLARATION.Date_Fin, DECLARATION.Delai, DECLARATION.Action, DECLARATION.Num_Zone, ZONE.Nom, DECLARATION.Num_Importance, IMPORTANCE.Importance "
    Requete = Requete & "FROM DECLARATION, IMPORTANCE, ZONE "
    Requete = Requete & "WHERE ZONE.Num_Zone = DECLARATION.Num_Zone "
    Requete = Requete & "AND IMPORTANCE.Num_Importance = DECLARATION.Num_Importance "
    Requete = Requete & "ORDER BY DECLARATION.Num_Declaration;"
    
    Set rsSituations = New Recordset
    rsSituations.CursorLocation = adUseClient
    rsSituations.Open Requete, Connexion, adOpenStatic, adLockReadOnly
    Set DtgLstSituations.DataSource = rsSituations


sous Access, si je teste la requete, ca marche nickel ! :)
sous VB, si j'execute le code donne au-dessus, j'obtiens le message d'erreur :
Erreur d'exécution '-2147467259 (80004005)'
La méthode 'Open' de l'objet '_Recordset' a échoué


je pense que le probleme vient reellement de la requete, car si je fais un "SELECT * FROM DECLARATION", ca marche !

est ce que quelqu'un pourrait m'aider ?

1 réponse

  1. probleme resolu :

    j'ai supprime la table ZONE, puis cree une table SECTEUR de meme structure avec les memes donnees, et ca marche :P
    0