Commande SQL qui ne fait pas update ?
Bonjour,
J'ai réalisé 2 commandes sql dans une boucle pl sql.
L'update sur la table Document marche mais pas sur la table radiologie.
La table radiologie est modifié mais avec toujours les memes valeurs . Je n'ai aucune idée pourquoi dans le cas de la table document l'update se passe bien mais pas dans le cas de la table radiologie.
Je ne comprends pas pourquoi il y a une mauvaise update de la table Radiologie dans ce code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
|
DECLARE
CURSOR c_SAG_DATA IS
SELECT * FROM SAG_DATA_TEMP;
BEGIN
FOR j IN c_SAG_DATA LOOP
UPDATE radiologie rad
SET rad.uh_demandeuse = j.code_uh_demande
, rad.nip = j.nip_actif
WHERE EXISTS
( SELECT 1
FROM radiologie rad
WHERE CONCAT(rad.id_demande, rad.id_examen) = j.s_aphp_reference_acte_rados
);
UPDATE document doc
SET doc.nda = j.nda
, doc.noip = j.nip_actif
WHERE EXISTS
( SELECT 1
FROM radiologie rad
WHERE CONCAT(rad.id_demande, rad.id_examen) = j.s_aphp_reference_acte_rados
AND rad.id_document_lie = doc.id_document
);
END LOOP;
COMMIT;
END;
/
exit; |
Merci