Bonjour,
je dois dans mon script shell executer une requete de sélection particulière, qui doit me générer les requetes 'alter table' pour activer toutes les contraintes de ma base : voici la requete :
Je sais que cette requete fonctionne très bien car je l'ai déja executé "à la main" (sans le script shell).
Code : Sélectionner tout - Visualiser dans une fenêtre à part select 'alter table '||table_name||' enable constraint '||constraint_name||';' from dba_constraints where owner = upper('MA_BASE');
Mon problème se situe donc lorsque j'essaie d'intégrer cette requete dans mon script. voici le code :
quand j'essaie d'executer ce script, voila le résultat qu'il m'affiche dans ma console :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 requete="select 'alter table '||table_name||' enable constraint '||constraint_name||';' from dba_constraints where owner = upper('MA_BASE');" echo $requete resultReq=`sqlplus -silent << Fin ${USER}/${PSWD} $requete Fin` echo $resultReq
rep1 rep2 file1 file2 correspondent aux repertoires et fichiers présents dans mon dossier d'execution de mon script shell.select 'alter table '||table_name||' enable constraint '||constraint_name||';' from dba_constraints where owner = upper('MA_BASE');
select 'alter table '||table_name||' enable constraint '||constraint_name||';' from dba_constraints where owner = upper('MA_BASE') rep1 rep2 file1 file2 ERROR at line 1: ORA-00942: table or view does not exist
Lorsqu'à la place de ma requete "select 'alter table..." je lui mets une simple requete de selection "select * from une_table" tout s'execute normalement. Je suppose donc que mon problème provient des caractères sépciaux de ma requete "|", mais je n'ai aucune idée de comment gérer ce problème. Sauriez comment je dois m'y prendre ?
Merci d'avance pour votre aide
Partager