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 :

[Débutant ACCESS] Contrainte de clés étrangères


Sujet :

Access

  1. #1
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 43
    Points : 47
    Points
    47
    Par défaut [Débutant ACCESS] Contrainte de clés étrangères
    Bonjour,

    Je suis actuellement en train de construire ma première base de données sous Access et j'ai une question...

    Pour les champs numériques ("numbers"), on peut choisir des entiers, des décimaux, etc..., mais aussi "replication ID" qui doit retranscrire un ID externe d'après ce que j'ai pu comprendre.
    Déjà est-ce vrai ?

    Sinon je veux établir une relation de contrainte de clé étrangère sur mes tables, notamment sur les identifiants. Je crée donc une relation entre les deux identifiants :
    - si je mets "autonumber" au 1er id et "long integer" au second, la contrainte de relation passe sans problème ;
    - si je mets "autonumber" au 1er id et "replication ID" au second, la contrainte ne veut pas passer, j'ai un message d'erreur me disant qu'il n'y a pas équivalence entre la taille ou le type des champs sélectionnés.

    Dois-je rester avec le champ "long integer" et ne pas utiliser "replication ID" ?

    Tant que j'y suis j'ai deux autres questions :
    - Est-ce que la création de contraintes avec l'interface d'Access permet de transcrire toutes les contraintes ?
    - Dans quel cas modifier les propriétés de jointure pour les contraintes ?

    Merci d'avance pour vos réponses.

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 371
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 371
    Points : 23 845
    Points
    23 845
    Par défaut
    OK, laisse faire l'Id de réplication pour le momemnt. C'est utile seulement si ta base de données est physiquement partgée entre plusieurs site. (Et encore là pas vraiment recommandé :-).

    Donc comme tu l'as découvert pour les relations un NumAuto est en réalit un Long donc ta clef primaire doit être un NumAuto et ta clef étranger un Long.

    Evidement tu peux utiliser d'autre type de données si c'est nécessaire.

    Pour ce qui est propriété de jointure :

    1) Activé l'intégrité référentielle c'est 'de base'
    2) Mettre à jour en cascade (Toujours pratique si tu veux modifier une clef)
    3) Détruire en cascade (attention bien comprendre que si activé, tu supprimer TOUS les enr détails associés à un enr maître).

    A+

  3. #3
    Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2006
    Messages : 43
    Points : 47
    Points
    47
    Par défaut
    Merci chef !

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 28/05/2014, 14h43
  2. Réponses: 8
    Dernier message: 08/08/2008, 12h45
  3. identification des clés étrangères (access 2007)
    Par ChTiRiBi dans le forum Access
    Réponses: 4
    Dernier message: 04/08/2008, 09h48
  4. Contrainte de clés étrangères
    Par CinePhil dans le forum Débuter
    Réponses: 4
    Dernier message: 04/03/2008, 23h26
  5. Contraintes de clés étrangères non respectées
    Par parfait dans le forum Requêtes
    Réponses: 7
    Dernier message: 28/07/2004, 13h48

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