Requete d'ajout apres nouvel enregistrement

Fermé
ninjasam - 1 sept. 2009 à 14:01
CaPiT Messages postés 609 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 21 avril 2010 - 1 sept. 2009 à 15:44
Bonjour,

Je suis sous Access 2003. J'ai une première table table1 et je voudrais que lors d'un saisie d'un nouvel enregistrement executer une requete d'ajout sur une autre table. Le but est de faire ca sans les formulaires pour assurer constamment la cohérence de la base de donné.
Y a til possibilité de recupérer une notification sur l'evennement ajout d'enregistrement d'une table?

Merci d'avance

5 réponses

CaPiT Messages postés 609 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 21 avril 2010 51
1 sept. 2009 à 14:56
Bonjour,

La saisie des enregistrements se faits directement par un formulaire?

J'ai un peu de mal à voir ou est ton soucis.
0
Il est possible d'ajouter un enregistrement directement dans la table sans passer par un formulaire.
Si l'on passe par un formulaire cela signifie que si l'on modifie la table sans passer par le formulaire la cohérence de la base est perdu. Il faut alors s'assurer dans toutes les requete et tous les formulaire modifiant table1 assure la cohérence et ca devient une usine à gaz, ce que j'aimerais bien éviter.

Merci bcp
0
CaPiT Messages postés 609 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 21 avril 2010 51
1 sept. 2009 à 15:14
Les tables dans Access permettent de stocker les données
Les formulaires permettent d'ajouter les données dans les tables.
Il faut éviter de plus possible de passer directement par les tables.

J'ai toujours pas bien ciblé ton soucis ><
Le mieux est d'exécuter toutes tes requêtes après la validation du formulaire (onclick).
0
Merci pour ta réponse,

Je pense que je ne suis pas dans la logique d'access et qu'il faut que je me fasse une raison. En fait là ou ca devient lourd est que je fait une requete avec un left join sur table1. Par exemple

Table 2 et Table 1
Id1 Id1 et Nom
1 1 "aa"
2 3 "bb"
3
4

Quand je fais une requete (eventuellement avec le formulaire qui va avec) avec le LEFT JOIN j'ai :
Rq
Id1 Nom
1 aa
2
3 bb
4
Si je remplis le nom de 2 il me créé automatiquement un enregistrement dans Table 1 avec Id1=2 et le nouveau nom et c'est à ce moment là (entre autre) que je veux qu'il execute ma requete d'ajout sur une Table3 afin de garder la cohérence avec Table1.

Il y a d'autres exemples mais celui là revient souvent et c'est vraiment lourd de devoir codé à chaque fois pour ça.

En tout cas merci de ta réponse

A+
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
CaPiT Messages postés 609 Date d'inscription lundi 7 janvier 2008 Statut Membre Dernière intervention 21 avril 2010 51
1 sept. 2009 à 15:44
J'ai pas tout compris par contre j'ai ciblé certaine chose :

"Si je remplis le nom de 2" > tu parles d'un remplissage d'un champs viia le formulaire?
Si oui, c'est là qu'un évenement de sauvegarde dans la 3eme table doit s'effectuer.
Donc pourquoi pas sur l'evenement Onchange de ce champs du formulaire exécuter un INSERT INTO dans le vba qui va remplir la Table 3.

Par contre je vois pas l'utilité de ces 3 tables. As-tu un exemple vraiment concret?
0