OVH Cloud OVH Cloud

Cas d'école : redondance des données souhaitée. Comment procéder ?

3 réponses
Avatar
Guy Capra, Alomphega
Bonjour,

(nb: message à visualiser en police à espacement fixe pour le schéma)

Soit trois tables T1, T2, T3.

T1 et T2 comportent 3 champs respectivement T1a, T1b, T1c et T2a, T2b, T2c.

T3 comporte 6 champs T3a, T3b, T3c, T3d, T3e, T3f.

Je souhaite remplir les champs de T3 avec les données de T1 et T2,
simplement en choisissant dans deux listes sur un formulaire lié à T3
les enregistrements à importer de T1 et T2 :


/-------\ /-------\
| T2a | -> | T3a |
| T2b | -> | T3b |
| T2c | -> | T3c |
\-------/ | |
| |
/-------\ | |
| T1a | -> | T3d |
| T1b | -> | T3e |
| T1c | -> | T3f |
\-------/ \-------/

Je souhaite importer les données et pas simplement lier les champs dans
le formulaire, car si les données des enregistrements de T1 et T2
changent ultérieurement je souhaite conserver les données préalablement
importées dans T3.

Je n'ai pas trouvé d'exemple de ce cas d'espèce, et tous liens et/ou
toutes explications me seraient d'un grand secours.

Merci,
--
Guy Capra, www.Alomphega.com
____________________________

3 réponses

Avatar
Xavier HUE
Bonjour Guy,

Je ne vois que SQL pour faire cela.
Essaie dans l'évènement sur clic d'un bouton

docmd.RunSQL "INSERT INTO T3 (T3a, T3b T3c, T3d, T3e, T3f)
SELECT T1.T1a, T1.T1b, T1.T1c, T2.T2a, T2.T2b, T2.T2c FROM
T1, T2 WHERE ZoneCleT1 = " & Me.ListeT1.Value & " AND
ZoneCleT2 = " & Me.ListeT2.Value

Oui?
Cordialement.
Avatar
Guy Capra, Alomphega
Le 23/12/2003 14:28, Xavier HUE écrivait :
Bonjour Guy,


Bonjour Xavier,


Je ne vois que SQL pour faire cela.


:-/

Essaie dans l'évènement sur clic d'un bouton

docmd.RunSQL "INSERT INTO T3 (T3a, T3b T3c, T3d, T3e, T3f)
SELECT T1.T1a, T1.T1b, T1.T1c, T2.T2a, T2.T2b, T2.T2c FROM
T1, T2 WHERE ZoneCleT1 = " & Me.ListeT1.Value & " AND
ZoneCleT2 = " & Me.ListeT2.Value

Oui?


Très certainement mais...
Avant d'en passer par là, j'aimerais trouver une solution typique
Access. Je ne peux pas croire que ce cas n'ait pas été prévu par les
ingénieurs MS.

Personne n'a d'information(s) là-dessus ?

À suivre...
--
Guy Capra, www.Alomphega.com
____________________________

Avatar
Guy Capra, Alomphega
Le 23/12/2003 15:34, Guy Capra, Alomphega écrivait :
[...]
Avant d'en passer par là, j'aimerais trouver une solution typique
Access. Je ne peux pas croire que ce cas n'ait pas été prévu par les
ingénieurs MS.

Personne n'a d'information(s) là-dessus ?


Je me réponds pour ceux qui ont la même interrogation :
la requête "mise à jour" semble être la solution directe et prévue.

En effet, il suffit de créer une requête "mise à jour" avec les tables
cible et source liées, et de remplir le(s) champ(s) "mise à jour"
idoines de la table cible dans la requête avec le nom complet du(des)
champ(s) sources à importer.

Une fois la requête lancée, les données des champs cibles seront
remplacées par celles des champs sources.

Cordialement,
--
Guy Capra, www.Alomphega.com
____________________________