a) Maak een proc die door de lijst met proc's loopt met de juiste frequency
waarde, voert ze uit en werkt lastrun
bij kolom.
- Maak een argument
@frequency
erin, geef het dan naar buiten door. - Filter je proc-lijst met dit argument
- Doorloop de lijst met procedures met deze "frequentie" en voer de procedures uit
bijv.
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) Maak geplande taken om dit proces uit te voeren
-
Maak een vacature aan "DAGELIJKSE PROCS" , wijs een schema toe aan deze taak zodat deze elke dag wordt uitgevoerd.
Voeg een taakstap toe met T-SQL:
exec dbo.RunProcs @Frequency = 'day'
-
Maak een vacature aan "WEKELIJKSE PROCS" , wijs een schema toe aan deze taak zodat deze elke week wordt uitgevoerd
Voeg een taakstap toe met T-SQL:
exec dbo.RunProcs @Frequency = 'week'
-
Maak een vacature aan "MAANDELIJKSE PROCS" , wijs een schema toe aan deze taak zodat deze elke maand wordt uitgevoerd
Voeg een taakstap toe met T-SQL:
exec dbo.RunProcs @Frequency = 'month'