< [Access] - Doublons dans une table | Forum des BTS

[Access] - Doublons dans une table

Pimprennelle

Best Member
J'ai une action menée dans un club de judo. Mon action à été de créer une base de données des adhérents sur Access, mais j'ai un petit problème, j'ai une table avec deux clés primaire. Le problème c'est quand j'enregistre avec mes 2 clés, il me met le message en pièce jointe. Si quelqu'un pouvait m'aider et me dire qu'est ce que cela veut dire, car j'ai tout vérifier mais je ne trouve pas de solution.

Merci
 
Problème sur Access pour une action

j'ai regardé mais je comprends pas pourquoi tu as mis 2 clé primaires dans une même table.
C'est peut-être pour cela que cela ne marche pas. Pourquoi tu ne crées pas une autre table avec ta 2ème clé primaire et après tu fais une requête?
 
Problème sur Access pour une action

Car il ya une relation de plusieurs à plusieurs entre 2 autres tables qui créer donc la nouvelle table qui est jointe. Qaund il ya une relation de plusieurs à plusieurs, la nouvelle table qui est créee comporte obligatoirement 2 clé primaire, celle de la 1ère et celle de la seconde table.

Si je me suis mal exprimé merci de me le dire.

Merci quand même de ton aide.
 
Problème sur Access pour une action

Salut,
Dans ta table REGLER, il doit y avoir soit :
- une valeur de clé inexistante
(en clair, tu as saisies une valeur qui n'existe ni à gauche, ni à droite de ta relation)
- une valeur nulle
(en clair, tu as omis de saisir une valeur)
Dans ce cas il y a violation de l'intégrité dans les relations.

Mais, j'ai plutôt la nette impression qu'après avoir créé tes tables, tu as idiomatiquement saisie les données dans les tables, avant même de mettre les tables en relation. D'où ce problème.

Remède. Supprimer les enregistrements de la table REGLER. Mettre en relation ladite table. Et enfin resaisir à nouveau l'ensemble des données.
@+
 
Problème sur Access pour une action

Bonjour,

Merci pour cette réponse, au départ, il y avait une relation qui marchait très bien, car avant, il y avait une autre clé sur cette table et c'est ma prof qui m'a fait remarquer que la clé primaire n'était pas bonne et qu'il fallait que je change pour mettre les 2 clés dans le message joint. Et c'est depuis ce changement que ça ne marche pas. J'avais la même chose dans une autre table à faire et cela a marché du 1er coup. Ma prof m'a dit qu'il devait y avoir un problème de n° d'adhérents entre la table principale et celle-ci, mais je ne pense pas. Qu'en pensez-vous?
 
Problème sur Access pour une action

Salut,
J'en pense, comme je le disais précédement, que vous devez :
- supprimer tous les enregistrements de la table REGLER
- supprimer les relations de la table REGLER
- vérifier les propriétés et index des clés primaires des tables ADHERENT et INSCRIPTION
- vérifier les propriétés et index des clés composées (ou concaténées) de la table REGLER
- mettre en place les relations de la table REGLER
- saisir à nouveau les enregistrements de la table REGLER
Logiquement, de problème il n'y en aura plus
@+
 
Problème sur Access pour une action

Bonsoir,

Merci de m'avoir répondu, et merci pour le compactage sur Access, je ne connaissais pas. J'ai envoyé par ma BDD par mail.
 
Problème sur Access pour une action

Salut,
Il y a des incohérences pour des occurrences de la table REGLER, car les valeurs de tes clés composées ne sont pas uniques.
Regarde l'exemple en image. http://cjoint.com/?dje4eBGaHi
Pour un même adhérent (N° licence) on ne peut pas avoir tuple fois un même dépense (N° inscription).
Je rappelle la règle, les valeurs composants une clé composée (ou concaténée) sont uniques.
Dans ce cas, la seule parade serait d'ajouter une troisième clé. On pourrait pourquoi pas utiliser le champ &quot;date&quot;.
Le seul hic, dans la table REGLER, il y a 2 occurrences pour lesquelles il n'y a pas de date.

Mais si on regarde alors de plus près l'ensemble des dates, on s'aperçoit malheureusement qu'il y a à nouveau des tuples au niveau des valeurs.

Une question. On vous a donné une BDD dès le départ ou bien est-ce toi qui a conçu entièrement cette BDD ?
@+
 
Problème sur Access pour une action

Bonjour,

Pour un même adhérent (N° licence) on ne peut pas avoir tuple fois un même dépense (N° inscription): C'est normale, car il y a l'année 2005/2006 et l'année 2006/2007 dans la table. Regardez la table participer cela fait la même chose et ça marche.
Une question. On vous a donné une BDD dès le départ ou bien est-ce toi qui a conçu entièrement cette BDD ? C'est moi qui est conçu cette BDD seule, je l'ai monté + d'1 fois à ma prof qui m'a dit qu'elle était parfaite. Alors je comprends plus rien.
 
Problème sur Access pour une action

Pimprennelle link=topic=50421.msg524310#msg524310 date=1173431318 a dit:
Bonjour,
Pour un même adhérent (N° licence) on ne peut pas avoir tuple fois un même dépense (N° inscription): C'est normale, car il y a l'année 2005/2006 et l'année 2006/2007 dans la table. Regardez la table participer cela fait la même chose et ça marche.
Une question. On vous a donné une BDD dès le départ ou bien est-ce toi qui a conçu entièrement cette BDD ? C'est moi qui est conçu cette BDD seule, je l'ai monté + d'1 fois à ma prof qui m'a dit qu'elle était parfaite. Alors je comprends plus rien.
Bonsoir,
Ton argumentation : &quot;C'est normal, car il y a l'année 2005/2006 etc.&quot; ne tient pas !
Une clé composée (ou concaténée) dans une table ne peut contenir que des valeurs uniques, car chaque clé qui la compose est une clé étrangère.
Si on regarde de plus près ta table REGLER, cette règle n'est malheureusement pas respectée. Regardes l'image.
La clé composée que tu souhaites mettre en place ne peut être valide puisque certaines valeurs de cette clé ne sont pas uniques. Il y a des tuplets (doublons). J'ai bien essayé d'ajouter N° Année de la table REGLER dans la clé composée, mais là encore on est confronté à la présence de tuplets. J'ai même essayé avec Date, kif kif et en plus il y a 2 occurrences sans date.

En ce qui concerne la table PARTICIPER, là c'est pur hasard, car il n'y a pas de tuplets. Mais dans peu de temps tu vas être confrontée au même problème et ne pas pouvoir enregistrer une occurrence, lorsqu'un adhérent décidera de vouloir s'inscrire à une même compétition d'année en année.

En clair, la BDD mérite des modifications urgentes sous peine d'être confronté un jour ou l'autre à ne pas ou plus pouvoir saisir de nouvelles occurrences.
Il faut le reconnaitre, même si je ne peux apprécier tes connaissances en la matière, via le forum ce n'est pas évident, que c'est malgré tout du beau boulot.

Pour info. Concernant la table Année, il n'était pas nécessaire du tout d'inscrire N°Année et Année. Année suffisait amplement, puisque chaque valeur de saison 2005/2006 est unique.

On reste à ta disposition
@+
 
Retour
Haut