Mise à jour avec Update

Le
Jacques
Bonsoir,

Je voudrais lorsque je modifie des champs dans la « tbl Adhérents »
mettre à jour ces mêmes champs dans ma tbl Familles.

Je fais un Update mais aucun champ ne se met à jour.

Private Sub txtAdresse1_AfterUpdate()
Call MajFamilles
End Sub

Sub MajFamilles()

StrSql = "UPDATE ([tbl adhérents] LEFT " & _
"JOIN [tbl Villes] " & _
"ON [tbl adhérents].Ville=[tbl Villes].RéfVille) " & _
"INNER JOIN [tbl Familles] " & _
"ON [tbl adhérents].NuméroFamille=[tbl
Familles].NuméroFamille SET [tbl Familles].Adresse1 " & _
"= [tbl adhérents].adresse1, [tbl Familles].Adresse2 =
[tbl adhérents].adresse2, [tbl " & _
"Familles].CP = [tbl adhérents].CP, [tbl Familles].Ville
= [tbl villes].Ville " & _
"WHERE [tbl Adhérents].NuméroLicence=" &
lstr_NuméroLicence & " ;"

' Modifications des champs
CurrentDb.Execute StrSql
End Sub

Merci de votre aide.

Salutations.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Raymond [mvp]
Le #6301571
Bonsoir.

sans aller jusqu'à lire ta requête, tu ne dois jamais avoir des champs
redondants dans une base de données relationnelle, c'est même la première
chose qu'on apprend quand on débute.
donc tu as un problème d'adresses en double que tu dois résoudre, et elles
ne doivent être stockées que dans une seule table, mise en relation avec les
autres tables qui en ont besoin.

--
@+
Raymond Access MVP http://www.OfficeSystemAccess.com/
http://officesystem.access.over-blog.com/
Pour débuter sur le forum: http://www.mpfa.info/

Cet été, j'en ai rien à coder, je me forme : les devoirs de vacances
http://www.comscamp.com/Tracker/Redirect.ashx?linkidJd96883-a859-4212-b4a0-bce47c8e0d99


"Jacques"
Bonsoir,

Je voudrais lorsque je modifie des champs dans la « tbl Adhérents »
mettre à jour ces mêmes champs dans ma tbl Familles.

Je fais un Update mais aucun champ ne se met à jour.

Private Sub txtAdresse1_AfterUpdate()
Call MajFamilles
End Sub

Sub MajFamilles()

StrSql = "UPDATE ([tbl adhérents] LEFT " & _
"JOIN [tbl Villes] " & _
"ON [tbl adhérents].Ville=[tbl Villes].RéfVille) " & _
"INNER JOIN [tbl Familles] " & _
"ON [tbl adhérents].NuméroFamille=[tbl
Familles].NuméroFamille SET [tbl Familles].Adresse1 " & _
"= [tbl adhérents].adresse1, [tbl Familles].Adresse2 [tbl adhérents].adresse2, [tbl " & _
"Familles].CP = [tbl adhérents].CP, [tbl Familles].Ville
= [tbl villes].Ville " & _
"WHERE [tbl Adhérents].NuméroLicence=" &
lstr_NuméroLicence & " ;"

'--- Modifications des champs
CurrentDb.Execute StrSql
End Sub

Merci de votre aide.

Salutations.
Jacques
Le #6301551
On 25 juil, 22:16, "Raymond [mvp]" wrote:
Bonsoir.

sans aller jusqu'à lire ta requête, tu ne dois jamais avoir des champs
redondants dans une base de données relationnelle, c'est même la prem ière
chose qu'on apprend quand on débute.
donc tu as un problème d'adresses en double que tu dois résoudre, et elles
ne doivent être stockées que dans une seule table, mise en relation a vec les
autres tables qui en ont besoin.

--
@+
Raymond Access MVP http://www.OfficeSystemAccess.com/http://officesystem .access.over-blog.com/
Pour débuter sur le forum:http://www.mpfa.info/

Cet été, j'en ai rien à coder, je me forme : les devoirs de vacance shttp://www.comscamp.com/Tracker/Redirect.ashx?linkidJd96883-a859-42...

"Jacques"
Bonsoir,

Je voudrais lorsque je modifie des champs dans la « tbl Adhérents »
mettre à jour ces mêmes champs dans ma tbl Familles.

Je fais un Update mais aucun champ ne se met à jour.

Private Sub txtAdresse1_AfterUpdate()
Call MajFamilles
End Sub

Sub MajFamilles()

StrSql = "UPDATE ([tbl adhérents] LEFT " & _
"JOIN [tbl Villes] " & _
"ON [tbl adhérents].Ville=[tbl Villes].RéfVille) " & _
"INNER JOIN [tbl Familles] " & _
"ON [tbl adhérents].NuméroFamille=[tbl
Familles].NuméroFamille SET [tbl Familles].Adresse1 " & _
"= [tbl adhérents].adresse1, [tbl Familles].Adresse2 =
[tbl adhérents].adresse2, [tbl " & _
"Familles].CP = [tbl adhérents].CP, [tbl Familles].Ville
= [tbl villes].Ville " & _
"WHERE [tbl Adhérents].NuméroLicence=" &
lstr_NuméroLicence & " ;"

'--- Modifications des champs
CurrentDb.Execute StrSql
End Sub

Merci de votre aide.

Salutations.


Bonsoir,

Merci pour la leçon, mais pour des raisons qui me sont propres je dois
créer des champs redondants et pouvoir les mettres à jours.

Salutations.

Raymond [mvp]
Le #6301501
Bonjour.

la syntaxe me semble correcte (sauf si je mélange deux champs).
place un Debug.print juste après la contruction de l'instruction sql. le
texte est-il bon ? si oui, copie le résultat dans le texte sql d'une requête
et exécute la requête. est-ce que ça fonctionne ?

--
@+
Raymond Access MVP http://www.OfficeSystemAccess.com/
http://officesystem.access.over-blog.com/
Pour débuter sur le forum: http://www.mpfa.info/

Cet été, j'en ai rien à coder, je me forme : les devoirs de vacances
http://www.comscamp.com/Tracker/Redirect.ashx?linkidJd96883-a859-4212-b4a0-bce47c8e0d99


"Jacques"
On 25 juil, 22:16, "Raymond [mvp]"
Bonsoir,

Merci pour la leçon, mais pour des raisons qui me sont propres je dois
créer des champs redondants et pouvoir les mettres à jours.

Salutations.
Jacques
Le #6301411
On 26 juil, 09:14, "Raymond [mvp]" wrote:
Bonjour.

la syntaxe me semble correcte (sauf si je mélange deux champs).
place un Debug.print juste après la contruction de l'instruction sql. le
texte est-il bon ? si oui, copie le résultat dans le texte sql d'une re quête
et exécute la requête. est-ce que ça fonctionne ?

--
@+
Raymond Access MVP http://www.OfficeSystemAccess.com/http://officesystem .access.over-blog.com/
Pour débuter sur le forum:http://www.mpfa.info/

Cet été, j'en ai rien à coder, je me forme : les devoirs de vacance shttp://www.comscamp.com/Tracker/Redirect.ashx?linkidJd96883-a859-42...

"Jacques"
On 25 juil, 22:16, "Raymond [mvp]"
Bonsoir,

Merci pour la leçon, mais pour des raisons qui me sont propres je dois
créer des champs redondants et pouvoir les mettres à jours.

Salutations.


Bonjour Raymond,

Le résultat de la requette est bon, et voici une copie du code de la
requette ajout:

UPDATE ([tbl adhérents] LEFT JOIN [tbl Villes] ON [tbl
adhérents].Ville=[tbl Villes].RéfVille) INNER JOIN [tbl Familles] ON
[tbl adhérents].NuméroFamille=[tbl Familles].NuméroFamille SET [tbl
Familles].Adresse1 = [tbl adhérents].adresse1, [tbl Familles].Adresse2
= [tbl adhérents].adresse2, [tbl Familles].CP = [tbl adhérents].CP,
[tbl Familles].Ville = [tbl villes].Ville
WHERE [tbl Adhérents].NuméroLicence•0010065;

Salutations.

PS. Je reviendrais plus tard sur les champs redondants car si je peux
les éviter dans mon cas pourquoi pas.

Raymond [mvp]
Le #6301391
si le résultat est bon, il n'y a aucune raison que ça ne fonctionne pas par
vba.

--
@+
Raymond Access MVP http://www.OfficeSystemAccess.com/
http://officesystem.access.over-blog.com/
Pour débuter sur le forum: http://www.mpfa.info/

Cet été, j'en ai rien à coder, je me forme : les devoirs de vacances
http://www.comscamp.com/Tracker/Redirect.ashx?linkidJd96883-a859-4212-b4a0-bce47c8e0d99


"Jacques"

Bonjour Raymond,

Le résultat de la requette est bon, et voici une copie du code de la
requette ajout:

UPDATE ([tbl adhérents] LEFT JOIN [tbl Villes] ON [tbl
adhérents].Ville=[tbl Villes].RéfVille) INNER JOIN [tbl Familles] ON
[tbl adhérents].NuméroFamille=[tbl Familles].NuméroFamille SET [tbl
Familles].Adresse1 = [tbl adhérents].adresse1, [tbl Familles].Adresse2
= [tbl adhérents].adresse2, [tbl Familles].CP = [tbl adhérents].CP,
[tbl Familles].Ville = [tbl villes].Ville
WHERE [tbl Adhérents].NuméroLicence•0010065;

Salutations.

PS. Je reviendrais plus tard sur les champs redondants car si je peux
les éviter dans mon cas pourquoi pas.
Jacques
Le #6301161
On 26 juil, 13:46, "Raymond [mvp]" wrote:
si le résultat est bon, il n'y a aucune raison que ça ne fonctionne p as par
vba.

--
@+
Raymond Access MVP http://www.OfficeSystemAccess.com/http://officesystem .access.over-blog.com/
Pour débuter sur le forum:http://www.mpfa.info/

Cet été, j'en ai rien à coder, je me forme : les devoirs de vacance shttp://www.comscamp.com/Tracker/Redirect.ashx?linkidJd96883-a859-42...

"Jacques"

Bonjour Raymond,

Le résultat de la requette est bon, et voici une copie du code de la
requette ajout:

UPDATE ([tbl adhérents] LEFT JOIN [tbl Villes] ON [tbl
adhérents].Ville=[tbl Villes].RéfVille) INNER JOIN [tbl Familles] ON
[tbl adhérents].NuméroFamille=[tbl Familles].NuméroFamille SET [t bl
Familles].Adresse1 = [tbl adhérents].adresse1, [tbl Familles].Adresse2
= [tbl adhérents].adresse2, [tbl Familles].CP = [tbl adhérents].C P,
[tbl Familles].Ville = [tbl villes].Ville
WHERE [tbl Adhérents].NuméroLicence•0010065;

Salutations.

PS. Je reviendrais plus tard sur les champs redondants car si je peux
les éviter dans mon cas pourquoi pas.


Bonjoir,

La mise à jour s'éffectue une fois sur deux,
c'est à dire je modifie ma valeur, je ferme le formulaire, je vérifie
dans la table et aucune mise à jour,
j'ouvre de nouveau le formulaire je retape la valeur, et la mise à
jour s'éffectue.

Salutations.

Publicité
Poster une réponse
Anonyme