zoukankan      html  css  js  c++  java
  • MSSQL十秒一次的job

    从之前自己的CSDN上搬过来的

    SQL上面如果想定期执行一个job,那么在GUI界面上选择周期最短也是1分钟,

    有时候需要执行周期更短的job如十秒左右.那么在GUI界面上选择是不能满足我们的需求的.

    找了一下,发现有一种说法是在1个job在一分钟内做6次,那样也可以算做十秒执行一次,不过我试了好几次这个方法也不太理想.

    最后,找了一个MSDN,发现

    msdb.dbo.sp_add_jobschedule 

    这个方法中

    [ @freq_subday_type = ] frequency_subday_type
    指定 frequency_subday_interval 的单位。frequency_subday_type 的数据类型为 int,无默认值,可以是下列值之一:


    值  说明(单位)  
    0x1 
     在指定的时间
     
    0x4 
     分钟
     
    0x8 
     小时
     




    我想了一下,是不是有一个2 是per seconds 的但是没有文档化?

    试了一下,还真的可以

    但是好像如果把这个

    [ @freq_subday_interval = ] frequency_subday_interval
    两次执行作业之间间隔的 frequency_subday_type 周期数。frequency_subday_interval 的数据类型为 int,默认值为 0。

    当 @freq_subday_type = 2时

     @freq_subday_interval 这个值不能小于10,不然会失效

    USE [msdb]
    GO
    /****** 对象:  Job [同步活动告警]    脚本日期: 01/18/2012 11:18:27 ******/
    BEGIN TRANSACTION
    DECLARE @ReturnCode INT
    SELECT @ReturnCode = 0
    /****** 对象:  JobCategory [[Uncategorized (Local)]]]    脚本日期: 01/18/2012 11:18:27 ******/
    IF NOT EXISTS (SELECT name FROM msdb.dbo.syscategories WHERE name=N'[Uncategorized (Local)]' AND category_class=1)
    BEGIN
    EXEC @ReturnCode = msdb.dbo.sp_add_category @class=N'JOB', @type=N'LOCAL', @name=N'[Uncategorized (Local)]'
    IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
    
    END
    
    DECLARE @jobId BINARY(16)
    EXEC @ReturnCode =  msdb.dbo.sp_add_job @job_name=N'同步活动告警', 
            @enabled=1, 
            @notify_level_eventlog=0, 
            @notify_level_email=0, 
            @notify_level_netsend=0, 
            @notify_level_page=0, 
            @delete_level=0, 
            @description=N'无描述。', 
            @category_name=N'[Uncategorized (Local)]', 
            @owner_login_name=N'sa', @job_id = @jobId OUTPUT
    IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
    /****** 对象:  Step [同步活动告警]    脚本日期: 01/18/2012 11:18:27 ******/
    EXEC @ReturnCode = msdb.dbo.sp_add_jobstep @job_id=@jobId, @step_name=N'同步活动告警', 
            @step_id=1, 
            @cmdexec_success_code=0, 
            @on_success_action=1, 
            @on_success_step_id=0, 
            @on_fail_action=2, 
            @on_fail_step_id=0, 
            @retry_attempts=0, 
            @retry_interval=0, 
            @os_run_priority=0, @subsystem=N'TSQL', 
            @command=N'exec P_DSS_CopyActiveAlarm
    
    
    
    
    
    ', 
            @database_name=N'ViewFocus', 
            @flags=0
    IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
    EXEC @ReturnCode = msdb.dbo.sp_update_job @job_id = @jobId, @start_step_id = 1
    IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
    EXEC @ReturnCode = msdb.dbo.sp_add_jobschedule @job_id=@jobId, @name=N'同步活动告警', 
            @enabled=1, 
            @freq_type=4, 
            @freq_interval=1, 
            @freq_subday_type=2, 
            @freq_subday_interval=10, 
            @freq_relative_interval=0, 
            @freq_recurrence_factor=0, 
            @active_start_date=20111102, 
            @active_end_date=99991231, 
            @active_start_time=0, 
            @active_end_time=235959
    IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
    EXEC @ReturnCode = msdb.dbo.sp_add_jobserver @job_id = @jobId, @server_name = N'(local)'
    IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
    COMMIT TRANSACTION
    GOTO EndSave
    QuitWithRollback:
        IF (@@TRANCOUNT > 0) ROLLBACK TRANSACTION
    EndSave:
  • 相关阅读:
    atitit.ntfs ext 文件系统新特性对比
    Atitit.图片木马的原理与防范 attilax 总结
    Atitit.图片木马的原理与防范 attilax 总结
    Atitit.jdk java8的语法特性详解 attilax 总结
    Atitit.jdk java8的语法特性详解 attilax 总结
    Atitit.远程接口 监控与木马   常用的api 标准化v2 q216
    Atitit.远程接口 监控与木马   常用的api 标准化v2 q216
    Atitit..jdk java 各版本新特性 1.0 1.1 1.2 1.3 1.4 1.5(5.0) 1.6(6.0) 7.0 8.0 9.0 attilax 大总结
    Atitit..jdk java 各版本新特性 1.0 1.1 1.2 1.3 1.4 1.5(5.0) 1.6(6.0) 7.0 8.0 9.0 attilax 大总结
    Atitit.跨平台预定义函数 魔术方法 魔术函数 钩子函数 api兼容性草案 v2 q216  java c# php js.docx
  • 原文地址:https://www.cnblogs.com/vimmer/p/2763008.html
Copyright © 2011-2022 走看看