Bonjour,

J'ai réalisé un script qui devrait permettre de updater une table radiologie.
Malheureusement le script ne fait rien car la table n'est pas modifiée.
Il n'y a pas d'erreur dans le log non plus.
Voici le script :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 
function updateRadiologieTable
{
sqlplus -s /nolog >/dev/null  <<-EOF
connect $SCHEMA/$SCHEMAPW
 
set trimspool on
spool /app/bsr/MDE1BSR/home/users/amde1bsr/update_table_radiologie.log 
 
whenever sqlerror exit 1;
 
 
UPDATE radiologie rad
   SET (rad.uh_demandeuse,rad.nip) = (SELECT sda.code_uh_demande,sda.nip_actif
	   		FROM SAG_DATA_TEMP sda
	   		   	WHERE CONCAT(rad.ID_DEMANDE, rad.ID_EXAMEN) = sda.s_aphp_reference_acte_rados)
			WHERE CONCAT(rad.ID_DEMANDE, rad.ID_EXAMEN) in (select s2.ref from SAG_DATA_TEMP s2)
 
 
spool off
exit
EOF
}

Pourtant la commande sql marche depuis mon client Toad .

Lorsque j'execute cette commande ci dessous la table radiologie est executée correctement :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
 
UPDATE radiologie rad
   SET (rad.uh_demandeuse,rad.nip) = (SELECT sda.code_uh_demande,sda.nip_actif
	   		FROM SAG_DATA_TEMP sda
	   		   	WHERE CONCAT(rad.ID_DEMANDE, rad.ID_EXAMEN) = sda.s_aphp_reference_acte_rados)
			WHERE CONCAT(rad.ID_DEMANDE, rad.ID_EXAMEN) in (select s2.ref from SAG_DATA_TEMP s2)
Merci