J'ai une vaste sélection de ces éléments à ajouter à une feuille de calcul et je ne veux pas les parcourir à la main. Qu'est-ce que la ou les commandes T-SQL pour générer une liste de travaux d'agent SQL Server?
Sur chaque serveur, vous pouvez interroger la table sysjobs dans la msdb. Par exemple:
SELECT job_id, [name] FROM msdb.dbo.sysjobs;
-- 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
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
Mon patron a en fait trié ce que je cherchais - cela m'a donné la liste que je cherchais.
UTILISER msdb SELECT nom FROM sysjobs