Obtenez une liste des travaux de l'Agent SQL Server

55

J'ai une vaste sélection de ces éléments à ajouter à un tableur et je ne souhaite pas les parcourir à la main. Qu'est-ce que la commande T-SQL pour générer une liste de travaux d'agent SQL Server?

Alimack
la source

Réponses:

65

Sur chaque serveur, vous pouvez interroger la table sysjobs dans la base de données msdb. Par exemple:

SELECT job_id, [name] FROM msdb.dbo.sysjobs;
K. Brian Kelley
la source
Merci, je pense que vous venez de me battre au punch afin que vous obteniez le prix!
Alimack
19
-- List of all the jobs currently running on server
SELECT
     job.job_id,
     notify_level_email,
     name,
     enabled,
     description,
     step_name,
     command,
     server,
     database_name
FROM
    msdb.dbo.sysjobs job
INNER JOIN 
    msdb.dbo.sysjobsteps steps        
ON
    job.job_id = steps.job_id
WHERE
    job.enabled = 1 -- remove this if you wish to return all jobs
robyaw
la source
Pouvez-vous formater le SQL?
Frank V
4

Voici ma contribution - obtient également le nom de la catégorie et filtre les travaux du serveur de rapports.

SELECT  sysjobs.name 'Job Name',
        syscategories.name 'Category',
        CASE [description]
          WHEN 'No Description available.' THEN ''
          ELSE [description]
        END AS 'Description'
FROM    msdb.dbo.sysjobs
        INNER JOIN msdb.dbo.syscategories ON msdb.dbo.sysjobs.category_id = msdb.dbo.syscategories.category_id
WHERE   syscategories.name <> 'Report Server'
ORDER BY sysjobs.name 
Sam
la source
2

Mon patron a en fait déterminé ce que je recherchais - cela m'a donné la liste que je recherchais.

UTILISER msdb SELECT nom FROM sysjobs

Alimack
la source