bonjour,
je voudrais savoir comment peut on facilement calculer la durée d'excution d'un script sql en secondes.
merci
bonjour,
je voudrais savoir comment peut on facilement calculer la durée d'excution d'un script sql en secondes.
merci
Avec DMBS_UTILITY.get_time qui renvoie un number. Ce sont des centièmes de secondes.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 DECLARE d1 NUMBER; d2 NUMBER; BEGIN d1 := DBMS_UTILITY.get_time; DBMS_LOCK.sleep(ROUND(DBMS_RANDOM.VALUE(1,10),0)); d2 := DBMS_UTILITY.get_time; DBMS_OUTPUT.put_line( (d2-d1) ||' centièmes de secondes'); END; 200 centièmes de secondes
More Code : More Bugs. Less Code : Less Bugs
Mon Blog PL/Sql : Fichier Zip / Image BMP / Lire sqliteDB / QRCode et Images PNG ou BMP
Sans PL/SQL
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
22 SQL> define debut=0 SQL> column debut new_value debut SQL> select to_char(sysdate,'SSSSS') debut from dual; DEBUT ----- 56123 SQL> select count(*) from all_objects; COUNT(*) ---------- 21176 SQL> select to_char(sysdate,'SSSSS') - &debut durée from dual; ancien 1 : select to_char(sysdate,'SSSSS') - &debut durée from dual nouveau 1 : select to_char(sysdate,'SSSSS') - 56123 durée from dual DUREE ---------- 36
merci,
pour la premiere, il me faut des secondes pas des centièmes de secondes.
pour le 2eme
j'ai fait un truc similaire mais je dois calculer le temps d'execution du script lancé en @
@modele_script_forcages.sql
et çà ne marche pas comme çà, il ne lance pas mon script @ dans le pl.
j'ai essayé la fonction host mais çà ne marche pas non plus.
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
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 EXPDWH_ORACLE () { $ORACLE_HOME/bin/sqlplus $BASE_SIDFR_EXPDWH <<! declare var_deb date; var_fin date; var_delta number; duree number; v_cpt number; begin select Sysdate into var_deb from dual; @modele_script_forcages.sql select Sysdate into var_fin from dual; var_delta:=var_fin-var_deb; duree:=var_delta*24*3600; insert into FORCAGE_SUIVI (COD_ENV,COD_DOM, COD_APP, NOM_ACD, REF_ACD, FOR_DSC, FOR_MOD_APP, FOR_BDD, FOR_BDD_UTI, REF_SCRIPT_LIV_DSC, REF_SCRIPT_LIV_ACT, REF_SCRIPT_PRD_ENT, REF_SCRIPT_PRD_ACT, REF_SCRIPT_PRD_DAT,REF_SCRIPT_PRD_FIC, REF_SCRIPT_PRD_LOG, REF_SCRIPT_LIV_DAT, REF_SCRIPT_PRD_DUR) values ('$ENV','$domaine_lib', '$TYP_FORCAGE', '$ACC_RESP','$chemin_accord', '$DESC_FOR', 'SCRIPTS','$ENV', user, '$DESC_FOR','$NOM', 'GTS', 'ORD', sysdate, '$chemin_script', '$chemin_log',$date_livr_script,duree); commit; end; / exit; ! }
More Code : More Bugs. Less Code : Less Bugs
Mon Blog PL/Sql : Fichier Zip / Image BMP / Lire sqliteDB / QRCode et Images PNG ou BMP
merci beaucoup, j'ai utilisé le package oracle, çàà fonctionne très bien.![]()
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager