Unix - ksh qui appelle un sql dans une boucle
Bonjour,
Je suis coincé sur un problème depuis deux jours, si quelqu'un peut m'aider ça sera très sympa, je vous explique un peu ce que je veux faire :)
J'ai un fichier txt qui contient des codes (10000,100001,100002...)
Je veux mettre à jour une table selon ces codes, le script en question se trouve dans un fichier .sql qui est appelé par un ksh.
Mon sql est le suivant :
Code:
1 2 3 4 5 6 7 8 9 10
|
spool &2;
update TABLE1
set LADATE=sysdate,
ID=3,
ROUTAGE=null
where LECODE=&1;
COMMIT ;
spool off;
exit; |
La partie ksh qui traite mon sql est la suivante :
Code:
1 2 3 4 5 6
|
while read code
do
echo $code
sqlplus $USER_BD/$PASS_BD@$BD @scrpt.sql $code $TEMP
done < $FICHIER_DES_CODES |
Mon problème est que la commande sqlplus est à l'intérieur de la boucle, je veux la mettre à l’extérieur, comme ça je fais une seule connexion à la base, j'exécute mes updates et je me déconnecte, j'ai essayé de mettre le sqlplus avant le while, mais je ne sais pas comment appeler le fichier sql après, avec un @scrpt.sql il ne le trouve pas, et le terminal reste coincé sur SQL>
Je vous remercie d'avance :)