Bonjour,
je souhaiterai récupérer le code retour renvoyé par un application, en l'occurence SQLplus d'ORACLE.
mon batch nommé 'test.bat' se présente comme suit
Mon fichier sql, lui est tout simple
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 :begin echo off sqlplus -s user/pass@DB @test.sql if errorlevel 0 goto endlevel0 if errorlevel 1 goto endlevel1 if errorlevel 2 goto endlevel2 if errorlevel 3 goto endlevel3 :endlevel1 echo erreur level 1 goto :EOF :endlevel2 echo erreur level 2 goto :EOF :endlevel3 echo erreur level 3 goto :EOF :endlevel0 echo erreur level 0 goto :EOF
Donc je génère une erreur car la table toto n'existe pas, donc je devrais avoir un code retour correspondant à l'erreur sql.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 WHENEVER SQLERROR EXIT SQL.SQLCODE; WHENEVER OSERROR EXIT; select * from toto where ncntnum = 'XX'; insert into toto(1,2); exit
Quand j'exécute mon fichier bat, je me trouve toujours dans le bloc
Est-ce que j'utilise les bonnes commandes ?if errorlevel 0 goto endlevel0
Merci d'avance de votre aide
Partager