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 :

Clé primaire - Autoriser les doublons [AC-2013]


Sujet :

Access

  1. #1
    Membre à l'essai
    Homme Profil pro
    Lycéen
    Inscrit en
    Novembre 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Novembre 2014
    Messages : 23
    Points : 15
    Points
    15
    Par défaut Clé primaire - Autoriser les doublons
    Bonjour !

    Je voudrais lier 2 tables, l'une comprenant les informations de l'entreprise cliente, l'autre comprenant des notes sur ces dernières.

    Une entreprise peut contenir plusieurs notes la concernant. J'ai donc créé un champ ID pour l'entreprise que j'ai mis en clé primaire, et un champ ref_id pour lier des notes à une entreprise. Seulement lorsque je veux mettre le ref_id en clé primaire, ils me demandent de supprimer les doublons, mais ce n'est pas mon intention.

    Une solution ?

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 840
    Points : 7 974
    Points
    7 974
    Par défaut
    Bonjour,

    Pourquoi tu veux mettre le champ ref_id en clé primaire si il va faire référence à une entreprise avec plusieurs notes (donc forcément tu auras plusieurs même ref_id dans ta table).
    Il faudrait je pense ajouter un nouveau champ NumNoteEntreprise de type numéro automatique comme clé primaire de ta table.

    Cordialement,
    Mandresy
    "Je ne sais qu'une chose, c'est que je ne sais rien" Socrate

    N'oublions pas de mettre quand on a trouvé notre bonheur. Soyons sympa pour les futurs heureux.

    Merci, c'est toujours sympa de recevoir des de votre part

  3. #3
    Membre à l'essai
    Homme Profil pro
    Lycéen
    Inscrit en
    Novembre 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Novembre 2014
    Messages : 23
    Points : 15
    Points
    15
    Par défaut
    Citation Envoyé par madefemere Voir le message
    Bonjour,

    Pourquoi tu veux mettre le champ ref_id en clé primaire si il va faire référence à une entreprise avec plusieurs notes (donc forcément tu auras plusieurs même ref_id dans ta table).
    Il faudrait je pense ajouter un nouveau champ NumNoteEntreprise de type numéro automatique comme clé primaire de ta table.

    Cordialement,
    Si j'ajoute un champ dans la table des notes, avec numéro automatique, je ne pourrais pas lier plusieurs notes à une entreprise, non ?

    Merci pour le temps que tu m'accordes !

  4. #4
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 840
    Points : 7 974
    Points
    7 974
    Par défaut
    Ben si,

    Tu gardes encore ton champ ref_id dans ta table Notes qui va faire référence à l'entreprise et qui sera lié au champ ID. Où est le problème?

    Cordialement,
    Mandresy
    "Je ne sais qu'une chose, c'est que je ne sais rien" Socrate

    N'oublions pas de mettre quand on a trouvé notre bonheur. Soyons sympa pour les futurs heureux.

    Merci, c'est toujours sympa de recevoir des de votre part

  5. #5
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    7 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 7 965
    Points : 30 774
    Points
    30 774
    Billets dans le blog
    16
    Par défaut
    Citation Envoyé par Palestinian Voir le message
    Si j'ajoute un champ dans la table des notes, avec numéro automatique, je ne pourrais pas lier plusieurs notes à une entreprise, non ?
    Sans doute confondez vous clé primaire et clé étrangère. Dans la table TN des notes, la colonne ref_id fait l'objet d'une clé étrangère afin de garantir l'intégrité référentielle (pour chaque ligne de cette table la valeur prise par la colonne ref_id doit être aussi une valeur de la colonnes ID de la table TC des clients, sinon il y aurait des notes orphelines). Du point de vue théorique, cela n’interdit pas que ref_id fasse aussi l’objet de la clé primaire de la table TN, mais comme dit madefemere, vous imposeriez alors qu’un client n’ait qu’une note, ce qui n’est évidemment pas ce que vous voulez, en conséquence de quoi il faut bien ajouter une colonne pour la clé primaire de la table TN.
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

  6. #6
    Membre à l'essai
    Homme Profil pro
    Lycéen
    Inscrit en
    Novembre 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Novembre 2014
    Messages : 23
    Points : 15
    Points
    15
    Par défaut
    En suivant les conseils de madefemere, j'ai pu réglé ce problème.

    Merci à vous !

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

Discussions similaires

  1. Clé primaire composée de champs d'une même table : éviter les doublons
    Par Tristan Zwingelstein dans le forum Requêtes
    Réponses: 1
    Dernier message: 23/02/2013, 05h23
  2. [AC-97] Requête qui retire les doublons en fonctions de 3 clefs primaires.
    Par Jazz_ dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 13/10/2010, 11h26
  3. autoriser les doublons dans datatable
    Par sihammaster dans le forum VB.NET
    Réponses: 6
    Dernier message: 29/03/2010, 14h49
  4. clé primaire : autoriser les doublons
    Par Ledaf dans le forum Modélisation
    Réponses: 5
    Dernier message: 16/03/2009, 14h16
  5. Autoriser les doublons sur un champ
    Par marco_fot_hxc dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 29/04/2008, 10h40

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