Ho una vasta selezione di questi da aggiungere a un foglio di calcolo e non voglio passare a mano. Quali sono i comandi T-SQL per generare un elenco di lavori agente SQL Server?
Su ciascun server, è possibile eseguire una query sulla tabella sysjobs nel msdb. Per esempio:
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
Ecco il mio contributo: ottiene anche il nome della categoria e filtra i lavori del server di report.
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
Il mio capo ha effettivamente risolto quello che stavo cercando, questo mi ha dato la lista che stavo cercando.
Usa msdb SELEZIONA il nome DA sysjobs