a) Vytvořte proces, který prochází seznamem procesů s vhodnou frequency
hodnotu, provede je a aktualizuje lastrun
sloupec.
- Uveďte argument
@frequency
v něm, předejte jej ven. - Filtrujte svůj seznam procesů pomocí tohoto argumentu
- Projděte seznam procesů s touto "frekvencí" a spusťte procesy
např.
alter proc dbo.RunProcs
@Frequency varchar(50)
as
begin
declare @crProcs cursor
set @crProcs = cursor fast_forward for
select m.ProcName
from dbo.Maintainance m
where m.Frequency = @Frequency
order by 1
...
while @@fetch_status = 0
beign
begin try
exec @ProcName
...
update -> succeded
...
end try
begin catch
...
update -> failed
...
end catch
fetch ...
end
return 1
end
b) Vytvořte naplánované úlohy pro spuštění tohoto proc
-
Vytvořte úlohu "DENNÍ PROCES" , přiřaďte této úloze plán, aby se spouštěla každý den.
Přidejte krok úlohy pomocí T-SQL:
exec dbo.RunProcs @Frequency = 'day'
-
Vytvořte úlohu "WEEKLY PROCS" , přiřaďte této úloze plán, aby se spouštěla každý týden
Přidejte krok úlohy pomocí T-SQL:
exec dbo.RunProcs @Frequency = 'week'
-
Vytvořte úlohu "MĚSÍČNÍ PROCES" , přiřaďte této úloze plán, aby se spouštěla každý měsíc
Přidejte krok úlohy pomocí T-SQL:
exec dbo.RunProcs @Frequency = 'month'