Pb avec access
Résoluseblekiller_oupas Messages postés 397 Statut Membre -
J'aurais 2 probleme a resoudre:
Le premier c'est j'ai une relation entre deux tables qui ne se fait pas alors que mes elements en relation sont parfaitements identiques et que toutes les autres relations entre mes autres tables fonctionnent
Le deuxieme, j'aimerai savoir comment on fait le lien entre plusieurs listes d'un formulaire, (c'est a dire qu'en cliquant sur un element de la premiere liste, ca me selectionne tous les enregistrements lies (a cet element) dans une deuxieme liste
Mon patron commence a s'enerver parce que je ne fais plus grand chose!!!!!!!!!!!!
Donc si vous avez la reponse a au moins une des questions ou si vous vous connaissez qqn qui a une reponse, ca m'interesse tres fortement
D'avance je vous remercie pour tous ceux qui repondront
(je dois ajouter que je ne suis que debutant sur access 2000)
Configuration: Windows XP Internet Explorer 6.0
- Pb avec access
- Access appdata - Guide
- Acer quick access - Forum Logiciels
- Hns-self-wan-access-ipv6 - Forum Access
- Restructuration base de données access - Forum Access
- Get access - Télécharger - Récupération de données
24 réponses
- 1
- 2
Deux problèmes sont discutés en Access 2000: une relation entre deux tables ne se forme pas malgré des données identiques et le lien entre listes d'un formulaire ne sélectionne pas les enregistrements liés. Des réponses évoquent des causes possibles comme des incompatibilités de type entre champs (numérique vs caractère) ou des clés primaires dupliquées, et des cardinalités mal définies. Pour résoudre, plusieurs suggèrent de repenser le modèle: éviter les données identiques réparties sur plusieurs tables, par exemple créer une table 'formation' avec un champ 'type' et ajuster les cardinalités. En matière de liaison entre listes, des conseils portent sur l'utilisation de sous-formulaires et la définition des liens maître/clé enfant, ainsi que des tests de sources comme les RowSource pour déboguer.
Le premier c'est j'ai une relation entre deux tables qui ne se fait pas alors que mes elements en relation sont parfaitements identiques et que toutes les autres relations entre mes autres tables fonctionnent
Qu'entends-tu par 'ne se fait pas' : message d'erreur quand tu veux la créer ou quand tu fais la jointure dans une requête ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question2 causes possibles pour ton problème : tu veux faire une relation sur 2 champs qui ne sont pas du même type (un de type numérique et l'autre de type caractères par exemple), ou dans ta relation tu veux dupliquer une clé primaire, ce qui n'est pas possible dans une table. Ce qui veux dire que la cardinalité n'est pas bonne.
zak
ton fichier est-il gros ? essaye de l'enregistrer en jpg...
D'où l'intérêt de travailler avec des identifiants numériques (genre Id_Contact) et pas des identifiants alphabétiques (si une femme se marie ou divorce et change de nom ?)
Et sinon pour mon premier probleme vous savez comment faire? ou pas!?
C'est généralement la première cause d'erreur... :-)
As-tu fais une requête de non-correspondance entre les deux tables pour voir de manière simple si toutes les données de n sont présentes du côté 1 ? Parce que je n'en démordrai pas, cela vient de là (j'en suis sûr à 99,9% ;-))
Et sinon pour mon premier probleme vous savez comment faire? ou pas!?
ben, c'est celui-là, non ?
Ensuite je parlais du 2eme probleme, autant pour moi
ACCESS se trompe rarement quand il s'agit de vérifier une intégrité référentielle...
CQFD !
est-ce vous avez une solution pour mon DEUXIEME pb?
Il faut sûrement claquer un peu de VBA pour mettre à jour le rowsource de la deuxième liste.
Du genre : sur changement dans liste1, créer une requête 'select toto,tata from pouet where machin = valeur de liste1
mettre en rowsource de la liste2, cette requête...
Une requête-type qui ressort le nom de pays à partir de la ville saisie, elle n'a aucun intérêt puisqu'on a déjà choisi le pays avant, mais c'est pour la syntaxe qui recherche une valeur dans une zone de formulaire :
SELECT Pays.Pays FROM Pays INNER JOIN Villes ON Pays.Id_Pays = Villes.Id_Pays WHERE (((Villes.Ville)=[Formulaires]![Principal]![Aff_Ville]));--
A+ Blux
"Les cons, ça ose tout. C'est même à ça qu'on les reconnait"
Une relation n-n doit passer par une table intermédiaire (qui reprend en clés primaires les clés des deux tables qu'elle joint) avec 1-n et n-1 de l'autre côté.
Changer une relation de 1-n en 1-1 veut dire (dans la théorie) fusionner les deux tables...
Pis en plus, t'as pas de chances, car je suis en congés à midi...
Jette un oeil ici, pour voir les cardinalités :
http://www.sam-mag.com/P53,53,5,43,,,default.aspx
Peut-être qu'ensuite, tu reverras ton modèle de données...
En fait, tu m'as envoye au message 32 un petit exmple.
C'est exactement ce qu'il me reste a faire sauf que j'ai beaucoup de mal a refaire ce que toi tu as fait;
serait-ce possible d'avoir ton aide ou pas??? Car dans le fond, il ne me reste plus que ca!!
donc pour le faire sur ma base je suis pas pres d'y arriver!!!!
Juste pour description, ce que je veux faire, c'est a la place de ta liste pays, moi je mets NomSociete, a la place de ta liste pays je mets NomContact et dans la derniere zone de texte j'aimerais affixher tous les autres parametres
https://www.cjoint.com/?ffk2yXMyOh
Pour ton souci de relations, je ne sais pas, mais ce que je vois, c'est que tu as des données identiques dans des tables différentes, pourquoi ne pas avoir créé une table 'formation' avec un champ 'type' où tu aurais mis 'interne' ou 'phenix' ?
A mon avis, tu vas avoir des problèmes un jour, quand tu chercheras des données.
c'est ce que je suis en train de chercher et j'ai vu qu'il y avait un probleme donc je vais essayer de modifier ca
En meme temps j'ai remarque autre chose: si je met des tables "machine_01", "machine_02"....... en paralleleavec une meme cle secondaire presente dans chacune de ces tables, est-ce que ca peut marcher? ou il y aura encore des problemes de relations
- 1
- 2