脚本生成过sqlserver作业任务

来源:互联网 发布:关爱老人的网络用语 编辑:程序博客网 时间:2024/06/02 07:30

declare @jobname varchar(100)='定时任务_测试库';  --作业名称
declare @sql varchar(8000);             --要执行的命令
declare @dbname sysname=db_name();             --默认为当前的数据库名
declare @fsinterval int=1;              --相对于每日的重复次数
declare @time int=000000;                --开始执行时间,对于重复执行的作业,将从0点到23:59分

--创建作业
exec msdb..sp_add_job @job_name=@jobname

--创建作业步骤

--作业1
set @sql=' ';   --具体执行sql,自己写

exec msdb..sp_add_jobstep
    @job_name=@jobname,       --作业名称
    @step_name = '作业1',  --步骤名称
    @subsystem = 'TSQL',      --
    @database_name=@dbname, --定时任务明
    @command = @sql,     --执行任务
    @retry_attempts = 5, --重试次数
    @retry_interval = 5,  --重试间隔
    @on_success_action=3,   --转到下一步
    @on_fail_action=3       --转到下一步

--作业2
set @sql=' ';   --具体执行sql,自己写

exec msdb..sp_add_jobstep
    @job_name=@jobname,       --作业名称
    @step_name = '作业2',  --步骤名称
    @subsystem = 'TSQL',      --
    @database_name=@dbname, --定时任务明
    @command = @sql,     --执行任务
    @retry_attempts = 5, --重试次数
    @retry_interval = 5,  --重试间隔
    @on_success_action=3,   --转到下一步
    @on_fail_action=3       --转到下一步


--作业3
set @sql=' ';   --具体执行sql,自己写

exec msdb..sp_add_jobstep
    @job_name=@jobname,       --作业名称
    @step_name = '作业3',  --步骤名称
    @subsystem = 'TSQL',      --
    @database_name=@dbname, --定时任务明
    @command = @sql,     --执行任务
    @retry_attempts = 5, --重试次数
    @retry_interval = 5,  --重试间隔
    @on_success_action=1,   --退出
    @on_fail_action=2      --退出

--创建调度
declare @ftype int=4;   --每天=4,每周=8,每月=16
declare @fstype int=0;
declare @ffactor int=0;


EXEC msdb..sp_add_jobschedule
    @job_name=@jobname,
    @name = '时间安排',
    @freq_type=@ftype ,                  --每天,8 每周,16 每月
    @freq_interval=1,                    --重复执行次数
    @freq_subday_type=@fstype,           --是否重复执行
    @freq_subday_interval=@fsinterval,   --重复周期
    @freq_recurrence_factor=@ffactor,
    @active_start_time=@time             --执行时间


-- 添加目标服务器

EXEC msdb.dbo.sp_add_jobserver

@job_name = @jobname ,

@server_name = N'(local)'

go

0 0
原创粉丝点击