日期:2014-05-18  浏览次数:20397 次

如何在每年的最后一天和每个2月的最后一天执行一个存储过程
sql2000,存储过程写好了,需要在每年的最后一天和每年2月的最后一天晚上执行这个存储过程
发现作业的调度里没法设置啊
只有每天,每周,每月
请问大侠们有没有办法啊

------解决方案--------------------
存储过程内容里加时间判断,
job设置每天执行一次
SQL code

if   convert(varchar(100),getdate(),23)=convert(varchar(100),DATEADD(day,-1,convert(datetime,datename(YEAR,getdate())+'-03-01')),23) or   --2012-02-29
     convert(varchar(100),getdate(),23)=convert(varchar(100),convert(datetime,datename(YEAR,getdate())+'-12-31'),23)    --2012-12-31
begin
    --运行你的脚本
    print '1'
end
else 
begin
    print '2'
end

------解决方案--------------------
需要设置两个job

在调度里选择:每月-第“末一个”、“天”、每“12” 个月

开始日期设置为今年2月或者去年12月的最后一天