Bonjour,
Je voulais savoir s'il vous plais s'il y a une fonction ou une possibilité de récupérer le temps d'exécution d'un job par requête
Merci d'avance
Bonjour,
Je voulais savoir s'il vous plais s'il y a une fonction ou une possibilité de récupérer le temps d'exécution d'un job par requête
Merci d'avance
Tous les jobs sont stockées avec leur historique d'exécution dans la bases msdb, dans les tables intitulées sys.sysjob....
En particulier intéressez vous à
A +
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SELECT * FROM [msdb].[dbo].[sysjobhistory]
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
* * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *
La fameuse table système avec les heures stockées dans des INT au format HHMMSS...
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
* * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *
Un chouïa mieux que Générix qui stocke les heures minutes secondes en number(6, 2), les 2 décimales étant les secondes. Je suis toujours à la recherche d'une explication rationnelle à ce mystère, tout comme stocker les dates en varchar2(8).
J'ai cette vielle fonction qui peut t'être utile pour manipuler cette table.
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 -- ============================================= -- Description: Permet de transformer deux données date et heure en INT en un type datetime -- Pourquoi créer cette bidouille improbable et contre-performante ? -- Parce les données de certaines tables systèmes sont stocké dans des INT -- au lieu de faire ça comme du monde en mettant ça dans un type datetime -- exemple : msdb.dbo.sysjobactivity -- ============================================= CREATE FUNCTION [dbo].[f_scal_Convert_int_int_to_datetime] ( @param_date int, @param_time int ) RETURNS datetime AS BEGIN RETURN convert( datetime, convert( varchar(25) , @param_date ), 112 ) + convert( datetime, stuff( stuff( replicate ('0', 6 - len (convert(varchar(25), @param_time )) ) + convert(varchar(25), @param_time ) , 3, 0 , ':') , 6, 0 , ':' ) , 108) END GO
Moi personnellement j'aime bien utiliser la fonction dbo.agent_datetime comme ceci: ^^
++
Code : Sélectionner tout - Visualiser dans une fenêtre à part dbo.agent_datetime(run_date,run_time)
Il y a bien pire !
Extrait d'un de mes audits...
"
HARDIS (logiciel "Reflex") a eu l’idée parfaitement imbécile de séparer la date entre 5 parties :
• siècle, type NUMERIC(2,0);
• année, type NUMERIC(2,0);
• mois, type NUMERIC(2,0);
• jour du mois, type NUMERIC(2,0);
• heure + minute, type NUMERIC(4,0);
ou bien
• heure + minute + seconde, type NUMERIC(6,0).
Ce qui fait qu'une date/heure du logiciel de reflex HARDIS nécessite 25 octets (5 colonnes numérique de taille inférieur ou égale à 9 donc de taille interne 5 octets) alors que le type DATETIME2(0) de SQL Server utilise 6 octets. Soit 4 fois moins. La solution HARDIS, s’avère donc 4 fois plus volumineuse que le type propre !...
De plus, aucun index ne peut être utilisé pour rechercher ou comparer une date qui doit être décortiquée avant d'être manipulée. Il en résulte des temps de réponse catastrophiques...
De plus, certaines dates stockées sont incohérentes rendant les transtypages extrêmement difficiles...
Toutes nos tentatives pour reconstruire des dates cohérentes et donc bien typées se sont heurtées à une problématique de non déterminisme du code. Ce qui implique l’impossibilité d’utiliser des techniques de pointe telles que la colonne calculée indexée ou la vue indexée.
"
Alors vos date en string.... c'est du pipi de chat à côté !
A +
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
* * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *
Pas mal en effet. J'ai connu Hardis à l'époque par leur logiciel Adelia 400 sur AS/400. Mais as-tu au moins pu obtenir une réponse à ce choix de stockage? Pourquoi? Quel intérêt? Un pari perdu? Une vengeance?
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
* * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *
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