IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

VB : Jointure entre 2 tables Access


Sujet :

Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    88
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 88
    Points : 49
    Points
    49
    Par défaut VB : Jointure entre 2 tables Access
    Bonjour,

    Mes Tables :
    Contact {UserID, Nom, Prénom, IdVille}
    Villes {Id, Ville, CodePostal, Secteur}

    CONTACTS
    7 * TOTO * CHRISTIAN * 8
    7 * DUPO * JEAN * 9
    6 * ALTO * RENE * 10

    VILLES
    8 * PARIS * 75000 * PARIS
    9 * NANTES * 44000 * OUEST
    10 * RENNES * 35000 * OUEST

    1 - l'utilisateur se connecte sur mon appli en s'identifiant (login+pwd) = UserID
    2 - j'affiche automatiquement la liste des contacts pour le user

    exemple : pour le User ID = 7 j'affiche la liste des contacts concernant cet utilisateur ; j'affiche à l'écran toutes les informations correspondants aux contacts et notamment les informations de localisation

    soit je souhaite afficher pour cet user :

    TOTO * CHRISTIAN * PARIS * 75000 * PARIS
    DUPO * JEAN * NANTES * 44000 * OUEST

    Problème lors de l'éxecution de ma requête sous VB6:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    SQL = "SELECT CONTACT![NOM], CONTACT![PRENOM], VILLES![VILLE], VILLES![CP] 
    FROM CONTACT  JOIN VILLES ON CONTACT![IdVille]=VILLES![ID]
    WHERE CONTACT![UserID]= '" & num & "'"
     
    Rsqt.Open SQL, ConnectDataBase, adOpenDynamic, adLockOptimistic, adCmdText
    Message : "Erreur de syntaxe dans la close From"

    est ce un pb de syntaxe ?
    Merci.

  2. #2
    Expert éminent
    Avatar de cafeine
    Inscrit en
    Juin 2002
    Messages
    3 904
    Détails du profil
    Informations forums :
    Inscription : Juin 2002
    Messages : 3 904
    Points : 6 781
    Points
    6 781
    Par défaut
    quel est le type de jointure ?

    INNER JOIN ?
    LEFT JOIN ?
    RIGHT JOIN ?

  3. #3
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Ton message serait mieux dans le forum VB

    Mais bon, on va y répondre quand même, on est là pour ça

    Le problème vient du type de ton champ ID. Si c'est du numérique, il ne faut pas l'encadrer avec ' ni "

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SQL = "SELECT CONTACT![NOM], CONTACT![PRENOM], VILLES![VILLE], VILLES![CP] 
    FROM CONTACT  JOIN VILLES ON CONTACT![IdVille]=VILLES![ID] 
    WHERE CONTACT![UserID]= " & num
    Par contre s'il avait été numérique, ta syntaxe était correcte

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    88
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 88
    Points : 49
    Points
    49
    Par défaut
    J'ai toujours mon erreur de syntaxe dans la clause FROM ??


    VILLES![ID] est un numérauto
    CONTACT![IDville] est un chps numérique
    pas de souci de format entre ces deux champs VILLES![ID]=CONTACT![IDville] ?

    j'ai pris note de ta remarque sur mon choix du forum !! ok autant pour moi !!

  5. #5
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    INNER JOIN a priori

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    88
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 88
    Points : 49
    Points
    49
    Par défaut
    Avec Inner Join message d'erreur = expression de jointure non supportée


  7. #7
    Membre habitué

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 193
    Points : 171
    Points
    171
    Par défaut
    Et si tu fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    SQL = "SELECT CONTACT![NOM], CONTACT![PRENOM], VILLES![VILLE], VILLES![CP] 
    FROM CONTACT , VILLES
    WHERE CONTACT![IdVille]=VILLES![ID] 
    AND CONTACT![UserID]= " & num
    Ca marche ?

    Mais ici on ne précise pas le type de jointure.


    Et c'est peut etre que VB ne supporte pas INNER JOIN...
    contrairement à VBA (j'ai jamais essayé)

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    88
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 88
    Points : 49
    Points
    49
    Par défaut
    Ca fonctionne avec les 2 conditions dans la clause WHERE ! merci
    je vais qd meme essayer de trouver la réponse dans un autre forum sur mon problème de syntaxe !
    MERCI

Discussions similaires

  1. Problème de jointure entre 2 tables Access
    Par MITCH31 dans le forum VBA Access
    Réponses: 8
    Dernier message: 14/12/2005, 14h31
  2. Jointure entre 3 tables
    Par zigune dans le forum Langage SQL
    Réponses: 9
    Dernier message: 15/11/2004, 16h04
  3. Jointure entre deux tables et résultat
    Par Asdorve dans le forum Langage SQL
    Réponses: 2
    Dernier message: 02/06/2004, 14h50
  4. [jointure]requete possible de double jointure entre 2 tables
    Par akira_le_gaucher dans le forum Langage SQL
    Réponses: 4
    Dernier message: 11/05/2004, 15h03
  5. Jointure entre 2 tables et OR
    Par PyRoFlo dans le forum Requêtes
    Réponses: 2
    Dernier message: 02/02/2004, 18h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo