Bonjour ,

J'ai un script VBScript qui me permet de me connecter a une base de données et d'en récupérer l'état (open, mount ...)

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
Set cmd = WshShell.Exec("cmd /c "& ORACLE_HOME & "\BIN\sqlplus.exe -s /@"&SERVICE &" as sysdba @C:\test\nscp_supervision\scripts\test\requete_vbs\requete_sql_etat_bdd.sql")
 
		ERR_SQL= err.description
 
		result_cmd = split(cmd.StdOut.ReadAll,VbCrLf)
		Do While cmd.Status <> 1
			WScript.Sleep 100
		Loop	
 
	CODE_ERREUR = err.number		
				if CODE_ERREUR = 0 then 
					result_status = result_cmd (1)
					result_version = result_cmd (2)
					result_date = result_cmd (3) &" - " &result_cmd (4)
 
				else
					CODE_ERREUR = 2									
					gest_erreur_sql()
				end if
ce code marche quand la base est en état open et mount

les requêtes que j’exécute et qui sont dans @C:\test\nscp_supervision\scripts\test\requete_vbs\requete_sql_etat_bdd.sql sont les suivantes,

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
whenever sqlerror exit 2;
		set echo off
		set linesize 10
		set pagesize 10
		set head off
 
		SELECT
			STATUS,
			VERSION,
			to_char(STARTUP_TIME, 'dd/mm/yyyy hh24:mi:ss')
		FROM
			V$INSTANCE;
quit;
mais quand la base est shutdown, j'ai un problème qui doit être lié au fait que je ne peux pas faire de select avec la base en shutdown et ce que vous sauriez comment je peux récupérer l'erreur sql généré lors de cette erreur ?

Merci,

Galène