OVH Cloud OVH Cloud

requête sql de suppression

3 réponses
Avatar
doudou
Bonjour,

Voil=E0 quand je fais une requ=EAte de suppression avec deux=20
tables dans une requ=EAte il me demande une fois pass=E9 en=20
sql de sp=E9cifier quelle table doit =EAtre supprimer mais=20
comment faire ????


PS docmd.runsql "delete ....."

3 réponses

Avatar
ticegestion
Bonjour,
"doudou" a écrit dans le message de
news:1daf601c45460$4c7a8cf0$
Bonjour,

Voilà quand je fais une requête de suppression avec deux
tables dans une requête il me demande une fois passé en
sql de spécifier quelle table doit être supprimer mais
comment faire ????


Une requete action ne peut opérer que sur une seule table. Si tu veux faire
une suppression de données dans une table en définissant des critères
mettant en jeu une table liée, tu peux le faire avec une sous requete.
Exemple : soit les deux tables suivantes :
PRODUIT(NumProd, libelleprod, #codecat)
CATEGORIE(CodeCat, libCat)
On veut supprimer tous les produits de la catégorie dont le libellé est :
"articles luxes"
la chaine SQL sera alors :
StrSql="DELETE FROM PRODUIT WHERE codecat IN(SELECT CodeCat FROM CATEGORIE
WHERE LibCat='articles luxes')"
...
DoCmd.RunSql StrSql
Voilà une solution.
Cordialement
Fred
http://www.ticegestion.com
visitez le rayon BTS CGO P10 (analyse de SI) et le rayon modes opératoires
(autoformation Access)

Avatar
doudou
merci pour cette réponse mais moi j'ai deux critère le
numéro de fabrication et la phase de celui .

Je ne peut pas supprimer sans ces deux critère ...

Merci de me répondre


-----Message d'origine-----
Bonjour,
"doudou" a écrit
dans le message de

news:1daf601c45460$4c7a8cf0$
Bonjour,

Voilà quand je fais une requête de suppression avec deux
tables dans une requête il me demande une fois passé en
sql de spécifier quelle table doit être supprimer mais
comment faire ????


Une requete action ne peut opérer que sur une seule
table. Si tu veux faire

une suppression de données dans une table en définissant
des critères

mettant en jeu une table liée, tu peux le faire avec une
sous requete.

Exemple : soit les deux tables suivantes :
PRODUIT(NumProd, libelleprod, #codecat)
CATEGORIE(CodeCat, libCat)
On veut supprimer tous les produits de la catégorie dont
le libellé est :

"articles luxes"
la chaine SQL sera alors :
StrSql="DELETE FROM PRODUIT WHERE codecat IN(SELECT
CodeCat FROM CATEGORIE

WHERE LibCat='articles luxes')"
....
DoCmd.RunSql StrSql
Voilà une solution.
Cordialement
Fred
http://www.ticegestion.com
visitez le rayon BTS CGO P10 (analyse de SI) et le rayon
modes opératoires

(autoformation Access)


.




Avatar
ticegestion
Rebonjour,
"doudou" a écrit dans le message de
news:1d6f701c45465$211dd5d0$

merci pour cette réponse mais moi j'ai deux critère le
numéro de fabrication et la phase de celui .

Je ne peut pas supprimer sans ces deux critère ...
Aucun problème, tu peux combiner les critères avec un AND (numfabrication

IN(SELECT.......) AND Phase IN(SELECT Phase FROM)...
Il aurait fallu que tu donnes les extraits des tables concernées, c'est plus
simple à expliquer



Merci de me répondre
De rien

Fred

-----Message d'origine-----
Bonjour,
"doudou" a écrit
dans le message de

news:1daf601c45460$4c7a8cf0$
Bonjour,

Voilà quand je fais une requête de suppression avec deux
tables dans une requête il me demande une fois passé en
sql de spécifier quelle table doit être supprimer mais
comment faire ????


Une requete action ne peut opérer que sur une seule
table. Si tu veux faire

une suppression de données dans une table en définissant
des critères

mettant en jeu une table liée, tu peux le faire avec une
sous requete.

Exemple : soit les deux tables suivantes :
PRODUIT(NumProd, libelleprod, #codecat)
CATEGORIE(CodeCat, libCat)
On veut supprimer tous les produits de la catégorie dont
le libellé est :

"articles luxes"
la chaine SQL sera alors :
StrSql="DELETE FROM PRODUIT WHERE codecat IN(SELECT
CodeCat FROM CATEGORIE

WHERE LibCat='articles luxes')"
....
DoCmd.RunSql StrSql
Voilà une solution.
Cordialement
Fred
http://www.ticegestion.com
visitez le rayon BTS CGO P10 (analyse de SI) et le rayon
modes opératoires

(autoformation Access)


.