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 :

Créer et effacer les relations entre les tables en VB


Sujet :

Access

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    153
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 153
    Points : 89
    Points
    89
    Par défaut Créer et effacer les relations entre les tables en VB
    Bonjour à tous, j'ai essayé de chercher un peu partout comment relier des tables en VB ou aussi en SQL et aussi enlever les relations mais je n'arrive pas à trouver
    est ce que vous avez des idées?
    Merci d'avance

    poliana

  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
    Ne mettez pas "Problème" dans vos titres, par définition derrière toute question se cache un problème
    12 tutoriels Access



  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    153
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 153
    Points : 89
    Points
    89
    Par défaut
    Merci beaucoup, j'ai du mal chérché dans la Faq
    J'essayerai ça

    poliana

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    153
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 153
    Points : 89
    Points
    89
    Par défaut
    J'ai utilisé la faq pour faire ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Function AddRelation()
       Dim chp As Field
       Dim relNew As DAO.Relation
       Set relNew = _
          CurrentDb.CreateRelation( _
             "Donnees_UlisToT_Immeuble", _
             "Donnees_Ulis", _
             "T_Immeuble", _
             dbRelationDeleteCascade + dbRelationUpdateCascade)
       Set chp = rel.CreateField("ESI_Immeuble")
     
       chp.ForeignName = "ESI_Immeuble"
       relNew.Fields.Append chp
       CurrentDb.Relations.Append relNew
    End Function
    Mais j'ai un souci : il reconnait pas .ForeignName...
    Sachant que je relie deux tables avec le champs "ESI_Immeuble" qui existe dans les deux tables et qui n'est pas une clé primaire ni clé etrangere pour aucune des deux tables
    Vous avez une idée sur cette manip?

    Merci d'avance

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    153
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 153
    Points : 89
    Points
    89
    Par défaut corrigé mai toujours erreur
    J'ai essayé de corriger mon code mais voila le resultat, mai au débogage, il souligne la derniere ligne :db.Relations.Append relNew
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    Function AddRelation()
        Dim chp As DAO.Field
       Dim relNew As DAO.Relation
       Dim bd As DAO.Database
     
        Set db = CurrentDb
       Set relNew = _
          CurrentDb.CreateRelation( _
             "Donnees_UlisToT_Immeuble", _
             "Donnees_Ulis", _
             "T_Immeuble", _
             dbRelationDeleteCascade + dbRelationUpdateCascade)
      Set chp = relNew.CreateField("ESI_Immeuble")
     
       chp.ForeignName = "ESI_Immeuble"
       relNew.Fields.Append chp
       db.Relations.Append relNew
    End Function

  6. #6
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Bonjour,

    je relie deux tables avec le champs "ESI_Immeuble" qui existe dans les deux tables et qui n'est pas une clé primaire ni clé etrangere pour aucune des deux tables
    J'ai un peu de mal à imaginer ce que tu essaies de faire...

    Est-ce que tu arrives à créer ta relation à la main déjà?

    pgz
    pluritas non est ponenda sine necessitate - Le rasoir d'Okham
    Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon

  7. #7
    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 : 40
    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
    Ce sera forcément une clé étrangère. Et il vaut mieux que ce soit une clé primaire. Sinon comment garantir l'intégrité ?

    Tu peux consulter ceci :
    http://warin.developpez.com/access/d...=partie_4#L4.6

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    153
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 153
    Points : 89
    Points
    89
    Par défaut
    Génial merci pour la doc vu qu'il n'y a pas d'intégrité référentielle
    J'ai modifié comme cela
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Set relNew = _
          CurrentDb.CreateRelation( _
             "Donnees_UlisT_Immeuble", _
             "Donnees_Ulis", _
             "T_Immeuble", dbRelationDontEnforce)
    Et ça marche nickel
    Encore Merci

    Poliana

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. créer les relations entre les tables
    Par Msysteme dans le forum Développement
    Réponses: 3
    Dernier message: 24/12/2008, 09h01
  2. Importer ou créer les relations entre les tables.
    Par Raphael_74 dans le forum VBA Access
    Réponses: 7
    Dernier message: 11/07/2007, 10h24
  3. Récupérer les relations entre les tables d'une bdd
    Par FRED.G dans le forum Accès aux données
    Réponses: 1
    Dernier message: 16/01/2007, 13h07
  4. Pourquoi les relations entre les tables
    Par ghita269 dans le forum Langage SQL
    Réponses: 1
    Dernier message: 26/12/2005, 11h54
  5. [Relations] afficher les relations entre 2 tables
    Par dzincou dans le forum PostgreSQL
    Réponses: 5
    Dernier message: 14/01/2004, 17h07

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