bheissat
Messages postés2Date d'inscriptionvendredi 4 septembre 2009StatutMembreDernière intervention 4 septembre 2009
-
4 août 2009 à 11:23
bitangm
Messages postés13Date d'inscriptionjeudi 20 août 2009StatutMembreDernière intervention24 août 2010
-
11 août 2009 à 22:43
Avec la commande suivante je sélectionne les enregistrements à modifier.
"select distinct AD.ID_OUTIL, AD.NUMERO_DM, IA.NUMERO_AM, AD.AVANCEMENT, IA.APPLICABILITE, APD.ETAT_VALIDATION from AVANCEMENT_DM AD, APPLICATION_DM APD, IDENTIFICATION_AM IA where (AD.NUMERO_DM=APD.NUMERO_DM and AD.NUMERO_DM=IA.NUMERO_DM) and (AD.ID_OUTIL='7FN' and AD.AVANCEMENT='CLOSE' and IA.APPLICABILITE='V2_1' and APD.ETAT_VALIDATION='NO VERIFIE');"
Le champ doit passer à 'VERIFIE OK'.
J'ai essayé plusieurs solution pour l'update mais je n'en ai trouvé aucune qui fonctionne !
En voici une :
" update APPLICATION_DM As APD, AVANCEMENT_DM AS AD, IDENTIFICATION_AM AS IA set (APD.ETAT_VALIDATION='VERIFIE OK') where (AD.NUMERO_DM=APD.NUMERO_DM and AD.NUMERO_DM=IA.NUMERO_DM and AD.ID_OUTIL='7FN' and AD.AVANCEMENT='CLOSE' and IA.APPLICABILITE='V2_1' and APD.ETAT_VALIDATION='NO VERIFIE');"
Si quelqu'un peut m'aider :-)
bitangm
Messages postés13Date d'inscriptionjeudi 20 août 2009StatutMembreDernière intervention24 août 2010 11 août 2009 à 22:43
Tout dépend du SGBD que tu utilise,
tu trouveras ci-dessous des exemples complets
--Pour Access, MySQL
UPDATE APPLICATION_DM As APD, AVANCEMENT_DM AS AD, IDENTIFICATION_AM AS IA
SET APD.ETAT_VALIDATION = 'VERIFIE OK'
WHERE (AD.NUMERO_DM = APD.NUMERO_DM)
AND (AD.NUMERO_DM=IA.NUMERO_DM)
AND (AD.ID_OUTIL='7FN')
AND (AD.AVANCEMENT='CLOSE')
AND (IA.APPLICABILITE='V2_1')
AND (APD.ETAT_VALIDATION='NO VERIFIE');
--Pour SQL SERVER
UPDATE APD
SET APD.ETAT_VALIDATION = 'VERIFIE OK'
FROM APPLICATION_DM As APD, AVANCEMENT_DM AS AD, IDENTIFICATION_AM AS IA
WHERE (AD.NUMERO_DM = APD.NUMERO_DM)
AND (AD.NUMERO_DM=IA.NUMERO_DM)
AND (AD.ID_OUTIL='7FN')
AND (AD.AVANCEMENT='CLOSE')
AND (IA.APPLICABILITE='V2_1')
AND (APD.ETAT_VALIDATION='NO VERIFIE');
--Pour Oracle, FireBird, InterBase, DB2...
Formule 1 :
=========
UPDATE APPLICATION_DM As APD
SET APD.ETAT_VALIDATION = 'VERIFIE OK'
WHERE APD.ETAT_VALIDATION='NO VERIFIE'
AND APD.NUMERO_DM IN
(SELECT IA.NUMERO_DM
FROM AVANCEMENT_DM AS AD, IDENTIFICATION_AM AS IA
WHERE (AD.NUMERO_DM = APD.NUMERO_DM)
AND (AD.NUMERO_DM=IA.NUMERO_DM)
AND (AD.ID_OUTIL='7FN')
AND (AD.AVANCEMENT='CLOSE')
AND (IA.APPLICABILITE='V2_1')
)
;
Formule 2 :
=========
UPDATE APPLICATION_DM As APD
SET APD.ETAT_VALIDATION = 'VERIFIE OK'
WHERE APD.ETAT_VALIDATION='NO VERIFIE'
AND EXISTS
(SELECT IA.NUMERO_DM
FROM AVANCEMENT_DM AS AD, IDENTIFICATION_AM AS IA
WHERE (AD.NUMERO_DM = APD.NUMERO_DM)
AND (AD.NUMERO_DM=IA.NUMERO_DM)
AND (AD.ID_OUTIL='7FN')
AND (AD.AVANCEMENT='CLOSE')
AND (IA.APPLICABILITE='V2_1')
)
;