Bonjour à tous.
J'espere que je suis dans la bonne rubrique, comme je ne sais pas si mon problème est lié à ORACLE ou à UNIX, j'ai choisi l'une des deux rubriques. Voila:
Je suis nouvelle en programmation shell et j'ai un problème incompréhensible pour moi.
Voilà, je programme sous ksh et j'aimerai exécuter un script SQL sur une base ORACLE 8.1.7 (je ne peux pas utiliser du PL/SQL).
Mon scipt ressemble à ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
`sqlplus -s /nolog << EOF  
 connect ${SC_ALIAS_LOGIN}/${SC_ALIAS_PWD}@${DB_BASE}    
 SET ECHO OFF  
 SET FEEDBACK OFF  
 SET HEADING OFF  
 SET COLSEP ';'  
 ${cmd} 
 exit 
EOF` | tr -d " " > ${REP}/${DB_USER}.${table}${Ver_Chg}.lst
lorsque je l'exécute, j'ai l'erreur
SQL*Plus:: not found
Et pourtant, si je modifie le script ainsi
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
`sqlplus -s /nolog << EOF  > ${REP}/${DB_USER}.${table}${Ver_Chg}.lst 
 connect ${SC_ALIAS_LOGIN}/${SC_ALIAS_PWD}@${DB_BASE}    
 SET ECHO OFF  
 SET FEEDBACK OFF  
 SET HEADING OFF  
 SET COLSEP ';'  
 ${cmd} 
 exit 
EOF`
Là il s'exécute et j'ai des résultats.

Je ne peux utiliser cette deuxième solution car j'ai beaucoup d'espace dans certaine tables et elle dépasse 2Go, ce qui fait planter mon script.

J'ai vérifié le PATH et le ORACLE_HOME et j'ai testé le chargement de l'environnement ORACLE dans mon script avec les instructions
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
export PATH=$PATH:usr/bin/X11usr:/local/bin 
umask=022 
export ORACLE_SID=${1} 
export ORAENV_ASK=NO 
. oraenv
mais le comportement est toujours aussi bizarre
Je suis preneuse pour toute piste qui m'aiderai à avancer.

Merci