Bonjour,
J'essaye de compiler une fonction qui prendrais en parametre le nom de la base. (je suis sous oracle9i)
Le soucis comme vous vous en douter est que il ne veux pas compiler car il ne trouve pas v_base
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 CREATE OR REPLACE FUNCTION UPTIME (v_base VARCHAR2 DEFAULT 'base9i') RETURN VARCHAR2 AS v_uptime_days NUMBER (4); v_uptime_hours NUMBER (4,2); BEGIN SELECT trunc(SYSDATE-logon_time,0) "Days", (SYSDATE-logon_time)*24 "Hours" INTO v_uptime_days, v_uptime_hours FROM sys.v_$session@v_base WHERE sid=1; WHILE v_uptime_hours >= 24 LOOP v_uptime_hours := v_uptime_hours - 24; END LOOP; RETURN to_char(v_uptime_days) || ' Day(s) ' || v_uptime_hours || ' Hour(s)'; END;![]()
connaitriez vous un moyen d'executer ce genre de requetes (autres que de figer ne nom de la base?
Cordialement,
Vincent
Partager