Volgens de suggestie van Nathan heb ik de SQL-profiler uitgevoerd en die query's gecompileerd in één enkele om aan mijn behoeften te voldoen.
Deze query geeft de status van de meest recente uitvoering van een onderhoudsplan dat de huidige database bevat:
SELECT
mp.name AS [MTX Plan Name],
msp.subplan_name AS [Sub Plan Name],
mpl.start_time AS [JobStart],
mpl.end_time AS [JobEnd],
mpl.succeeded AS [JobSucceeded]
FROM
msdb.dbo.sysmaintplan_plans mp
INNER JOIN msdb.dbo.sysmaintplan_subplans msp ON mp.id = msp.plan_id
INNER JOIN msdb.dbo.sysmaintplan_log mpl ON msp.subplan_id = mpl.subplan_id
AND mpl.task_detail_id = -- Get the most recent run for this database
(SELECT TOP 1 ld.task_detail_id
FROM msdb.dbo.sysmaintplan_logdetail ld
WHERE ld.command LIKE ('%['+db_name()+']%')
ORDER BY ld.start_time DESC)
Dit werkt het beste met onderhoudsplannen die door de wizard worden gegenereerd. Ad-hocplannen bevatten niet altijd de opdracht voor filteren. Maar de tabelkoppeling werkt nog steeds.