Bonjour,

je souhaiterais récupérer le résultat d'une requête sqlplus dans une variable shell.

Voici ce que je tape :

test=`sqlplus -S "login/mdp" <<END
> set head off
> set feedback off
> set newpage none
> ALTER SESSION SET NLS_DATE_FORMAT = 'hh24:mi:ss dd.mm.yyyy';
> select "\$CHAMP1",CHAMP2 FROM SCHEME.TABLE WHERE "\$CHAMP1" = hextoraw('48429F50FF7FC6');
> END`

il est à noter que $CHAMP1 n'est pas une variable shell mais bel et bien le nom du champs recherché (et je ne peux rien y changer )


Par défaut je suis en sh et voici le résultat que j'obtiens:
sh[7]: COID: Parameter not set.

Quand je passe en ksh j'obtiens:
echo $test
ERROR: ORA-01741: illegal zero-length identifier

Dans la mesure du possible j'aimerais rester en sh. Pouvez-vous m'aider à faire marcher cette commande ?

Merci d'avance pour votre aide, je commence à m'arracher les cheveux !

A+

LKX