我有大量选择要添加到电子表格中,但不想手动操作。生成 SQL Server 代理作业列表的 T-SQL 命令是什么?
答案1
在每台服务器上,您可以查询 msdb 中的 sysjobs 表。例如:
SELECT job_id, [name] FROM msdb.dbo.sysjobs;
答案2
-- 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
答案3
这是我的贡献 - 还获取类别名称并过滤掉报告服务器作业。
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
答案4
我的老板实际上理清了我所追求的东西——这给了我我想要的清单。
使用 msdb 从 sysjobs 选择名称