有没有办法找出哪些作业正在使用某个存储过程?
问问题
73487 次
1 回答
86
这将捕获在作业步骤中明确引用该过程的实例:
SELECT j.name
FROM msdb.dbo.sysjobs AS j
WHERE EXISTS
(
SELECT 1 FROM msdb.dbo.sysjobsteps AS s
WHERE s.job_id = j.job_id
AND s.command LIKE '%procedurename%'
);
如果它被从作业中调用的其他东西调用,或者命令是用动态 SQL 构造的,这可能会更难追踪。另请注意,如果您的过程名称也可以自然地出现在其他代码、注释等中,则可能会产生误报。
于 2012-08-06T13:01:15.300 回答