Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Modélisation
Modélisation Le forum qui vous aide à résoudre vos questions relatives à la modélisation (tables et relations) de votre base de données sous Access. Pour les états et les formulaires, postez dans le forum IHM.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/07/2007, 10h46   #1
Membre habitué
 
Inscription : août 2006
Messages : 541
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 541
Points : 121
Points : 121
Par défaut problème de conception

Bonjour.

Ce n’est pas un problème de requête mais plutôt un problème de conception.

Voici l’ensemble de mes tables :
Code :
1
2
3
4
5
Patient(PAT_ExternalId,NOM, PRENOM,PATRONYME,DATENAIS)
Visite(Visite_Id,PAT_ExternalId,DB1_VisiteID,DB1_DATEVISITE,DB2_VisiteID,DB2_DATEVISITE)
QRCorresp(NIQ,NIR,NIQSUP,NIRSUP,DB1_VisiteID,DB2_VisiteID)
Questions(NIQ,LIBELLE,LIBABR,ORIGINE_DB)
Reponses(NIR,REPONSE, UNITE)
J’arrive à lier les tables (QRCorresp, Questions et Reponse)(QRCorresp.NIQ = QUESTION.NIQ et QRCorresp.NIR = Reponses.NIR)
J’arrive aussi à lié les deux tables (Patient et Visite) (Patient.ExternalId = Visite.ExternalId)

Mais je ne sais pas comment je peux lier les tables (Visite et QRCorresp)
Parce que je veux une structure qui me permet d’extraire les données en fonction de leur base d’origine.

Exemple (la requête est donnée juste à titre indicatif):
Pour la base DB1 je dois faire
Code :
1
2
3
4
5
Select Patient.PAT_ExternalId, Patient.NOM, Visite.Visite_Id, Question. LIBELLE, Reponses.REPONSE from Patient,Visite, QRCorresp,Questions, Reponses
Where (Patient.PAT_ExternalId = Visite.PAT_ExternalId) 
and (Visite.DB1_VisiteID = QRCorresp. DB1_VisiteID)
and (QRCorres.NIQ = Questions.NIQ)
and (QRCorresp.NIR = Reponses.NIR)
mon problème est qu’au niveau conception je ne sais pas comment lier les tables (Visite et QRCorresp) parce que pour la base DB1 j’ai DB1_VisiteID comme champ commun entre les deux tables et pour la base DB2 j’ai DB2_VisiteID comme champ commun.

J’ai pensé à mettre le champ Visite. Visite_Id dans la table QRCorresp aussi. Mais comme je procède de cette manière : dans la table visite j’insère les données de la base DB1 donc il y a des Visite.Visite_Id qui sont généré automatiquement, à cette étape les champs Visite.DB2_VisiteID et Visite.DB2_DATEVISITE sont encore vide ; Donc je fais un mise à jour à partir de la base DB2 pour remplir ces champs.
Après j’inserts dans la même table Visite les données de base DB2 ne figurant pas dans la base DB1.

Et j’obtiens dans la table Visite des enregistrements de ce genre

Code :
1
2
3
4
7776,ELF21071977NAJ,KK000,15/10/2007 11:25, NULL, NULL
7777,ELF21071977NAJ,KK111,01/12/2007 10 :30, AA222, 01/12/2007
7778,ELF21071977NAJ,KK112,01/12/2007 14:00, AA222, 01/12/2007
7779,ELF21071977NAJ,  NULL   ,NULL , AA444,  14/12/2007
est ce que vous me proposer de changer la structure la table Visite?
Si oui comment ?
Sinon comment je peux en gardant la structure actuelle, lier les tables Visite et QRCorresp ?

Je vous remercie d’avance.
Smix007 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/07/2007, 22h28   #2
Rédacteur/Modérateur
 
Avatar de jpcheck
 
Jean-Philippe ANDRÉ
Inscription : juillet 2007
Messages : 7 881
Détails du profil
Informations personnelles :
Nom : Jean-Philippe ANDRÉ
Âge : 28
Localisation : France

Informations forums :
Inscription : juillet 2007
Messages : 7 881
Points : 10 749
Points : 10 749
Envoyer un message via MSN à jpcheck
bonsoir,
un petit coup d'inner join ne serait pas de trop je pense...
jpcheck est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/07/2007, 22h34   #3
Membre habitué
 
Inscription : août 2006
Messages : 541
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 541
Points : 121
Points : 121
Bnsoir,
merci mais j'ai bien préciser que mon roblème n'est pas un problème de requête et d'aiileur j'ai postulé dans la rubrique conception; je l'ai mis dans le post juste pour qu'on comprenne ce que je veux faire après; mais ce n'est pas le but exacte de mon post
oublies la requête et suggerer moi quelque chose en rapport avec la conception de la base.

merci encore
Smix007 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/07/2007, 22h53   #4
Rédacteur/Modérateur
 
Avatar de jpcheck
 
Jean-Philippe ANDRÉ
Inscription : juillet 2007
Messages : 7 881
Détails du profil
Informations personnelles :
Nom : Jean-Philippe ANDRÉ
Âge : 28
Localisation : France

Informations forums :
Inscription : juillet 2007
Messages : 7 881
Points : 10 749
Points : 10 749
Envoyer un message via MSN à jpcheck
oki pardon, j'avais pas tout lu
En quoi le jonglage entre les deux db t'est-il utile ? J'entends par la, est-ce qu'il doit y avoir redondance, ou est-ce un back, ou alors deux bdd complètement indépendantes ?

Je proposerais dans ce cas dans ta table QRCorresp un seul champ visite_id, mais d'ajoute un champs db_source de type boolean ou meme integer si ca te laisse de la marge derrieère, et ca permet de jongler sans avoir 25 champs à tester au final... Qu'en dis-tu ?
jpcheck est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h36.


 
 
 
 
Partenaires

Hébergement Web