Aide création Liaisons Tables Access 2007

Fermé
ecca - 5 juin 2008 à 14:11
 blux - 9 janv. 2010 à 21:09
Bonjour,

J'utilise Access 2007 (requêtes etc..) mais je veux maintenant me lancer dans la création d'une base. Mon problème est que je n'arrive pas bien à déterminer où mettre mes liaisons et où mettre certaines informations

(notamment dans mon exemple: date _d'entrée/date_de_Sortie/Mode_d'Entrée/Mode_de_Sortie que j'ai mis dans 2 tables: Table_Séjour et Table_Résidant, alors que de toute évidence il ne faut pas.)

Je ne sais pas quelles clefs secondaires utiliser et quel champ lier avec quoi. J'ai bien sûr essayé plein de choses, mais il y a toujours une anomalie.

En pratique je veux créer un dossier médical pour maison de retraite.
SI je comprends où mettre les liaisons pour les premières tables, je comprendrai pour les autres tables prévues qui ne figurent pas ici.

Merci de me donner un coup de pouce.

Pour mes premières tables j'ai:

*Table_Résident
*Table_Etablissement
*Table_Séjour
*Table_Antécédents_Médicaux
*Table_Résultats_d'Examens_Complémentaires_de_Biologie
*Table_Traitement _Médical
*Table_Contacts
*Table_Médecins

*Table_Résident:

Clef_Primaire: N°_de_ SS
Nom
Prénom
Date_de_Naissance
Date_d'Entrée
Mode_d'Entrée (a,b,c)
Etablissement (Plusieurs établissements possibles successivement, mais un seul à la fois!)
N°_de_Chambre
Secteur_d'Hébergement (X,Y,Z)
Date_de_Sortie
Mode_de_Sortie (d,e,f)
N°_de_Chambre


Table_Etablissement: Plusieurs Résidents par Etablissement

Clef Primaire: N°_FINESS_Etablissement
Nom_Etablissement
Adresse_Etablissement
N°Tél_Etablissement
e-mail_de_l'Etablisssement

Table Séjour:

Clef_Primaire: N°Séjour
N°_de_Chambre
Etablissement
Date_d'Entrée
Date_de_Sortie
Mode_d'Entrée (Liste Déroulante: a,b,c)
Mode_de_Sortie (Liste_Déroulante: d,e,f)
Secteur_d'Hebergement (Liste_Déroulante: X,Y,Z)

*Table Antécédents_Médicaux

Clef_Primaire: Code_CIM-10
Libellé
Date_de_l'Antécédent

*Table_Résultats_d'Examens_Complémentaires_de_Biologie:

REM:Un Résident peut avoir plusieurs examens à plusieurs dates; Plusieurs Résidents peuvent avoir le même type d'examen à des dates similaires ou différentes mais avec des résultats différents mais qui peuvent théoriquement être identiques que la date soit identique ou non. Certains champs peuvent être vides (par ex tout les examens ne sont pas demandés)

Clef????
Date_de_l'Examen_Complémentaire_de_Biologie
Hématies
Leucocytes
Créatinine
Albumine

*Table_Traitement_Médical

REM: Plusieurs Résidents peuvent avoir un ou plusieurs traitements, plusieurs résidents peuvent avoir des traitements identiques en tout ou partie. Ex: Tartempion peut prendre X, et Y, et Z; Dupont peut prendre A, B, Y, Z etc..;

Clef????
Libellé
Posologie
Date_de_Prescription
Date_de_Fin

*Table_Contacts

REM: Je souhaite ici répertorier: parentèle, famille, tuteurs, personnes de confiance

Clef????
Nom_Contact
Prénom_Contact
Adressse_Contact
N°_de_Téléphone_Contact
e-mail_Contact
Type_de_Contact (Liste_Déroulante: Epoux/Enfants/Tuteur/Médecin/Personne_de_Confiance)

*Table_Médecins

REM: Plusieurs Résidents peuvent avoir le même médecin; Un Résident peut avoir plusieurs médecins

Clef????
Nom_Médecin
Prénom_Médecin
Adresse_Médecin
N°_de_Téléphone_Médecin
e-mail_Médecin

Merci.
A voir également:

21 réponses

LatelyGeek Messages postés 1758 Date d'inscription vendredi 4 janvier 2008 Statut Membre Dernière intervention 5 janvier 2023 550
7 juin 2008 à 20:21
Première réponse: La clé est constituée de trois champs. Tu sélectionnes les trois par un cliquer/glisser, avant de cliquer sur le bouton Clé, et un symbole clé s'affiche devant les trois champs. C'est l'ensemble de ces trois qui devra être unique et identifiera l'enregistrement.

Pour le reste, voilà la logique.
UN résident peut subir PLUSIEURS examens. Il y a donc deux tables, une table résident et une table examen. La clé de la table résident est le N°SS (UN champ), qui sert de lien entre les deux tables, et la clé de la table examen est N°SS et DateExamen par exemple - clé sur PLUSIEURS champs.

C'est toujours comme ça. Dans une relation un-à-plusieurs, la clé du côté "un" doit dans la mesure du possible TOUJOURS porter sur UN champ. 'C'est techniquement possible de faire autrement mais c'est plus compliqué et lourd à gérer.)
Quant au coté "plusieurs" de la relation, tout dépend de ce qui se passe après. Si la table est également du côté "un" d'une autre relation, il faut lui attricuer un champ qui puisse servir de clé unique.

Cas simple: Une gestion de facture.
UN client peut avoir PLUSIEURS factures: La clé de la table Clients porte sur UN champ, NClient.
Le lien avec la table Factures se fait sur le NClient.
UNE facture a PLUSIEURS lignes de détail: La clé de la table Factures porte sur UN champ, NFacture.
Le lien avec la table DétailFactures se fait sur le champ NFacture
UN code article peut être présent dans PLUSIEURS détails de facture: La clé de la table Articles porte sur UN champ, NArticle.

Et la Table DétailFactures? Elle n'est QUE du côté "plusieurs" de ses relations, donc sa clé porte sur DEUX champs, NFacture et NArticle, les deux champs qui servent à faire le lien avec les tables factures et Articles.

Simple, non?







Pourquoi se compliquer la vie à faire simple, quand c'est si simple de faire compliqué?
-1