Schedule a Job

适用于:SQL ServerAzure SQL 托管实例

重要

Azure SQL 托管实例目前支持大多数(但不是所有)SQL Server 代理功能。 有关详细信息,请参阅 Azure SQL 托管实例与 SQL Server 的 T-SQL 区别

本主题介绍如何安排 SQL Server 代理作业计划。

开始之前

安全性

有关详细信息,请参阅实现 SQL Server 代理安全性

使用 SQL Server Management Studio

创建计划并将其附加到作业中

  1. “对象资源管理器” 中,连接到 SQL Server 数据库引擎的实例,然后展开该实例。

  2. 展开“SQL Server 代理”,展开“作业”,右键单击要计划的作业,并单击“属性”

  3. 选择 “计划” 页,再单击 “新建”

  4. “名称” 框中,键入新计划的名称。

  5. 如果不希望计划在创建后立即生效,则清除 “启用” 复选框。

  6. 对于 “计划类型”,请选择下列操作之一:

    • 单击“SQL Server 代理启动时自动启动”,在启动 SQL Server 代理服务时启动作业。

    • 单击 “CPU 空闲时启动” ,在 CPU 达到空闲条件时启动作业。

    • 如果希望反复运行计划,则单击 “重复执行” 。 若要设置重复执行的计划,请完成对话框上的 “频率”“每天频率”“持续时间” 组。

    • 如果希望仅运行一次计划,请单击 “执行一次” 。 若要设置“执行一次”计划,请完成对话框上的“执行一次”组。

将计划附加到作业中

  1. “对象资源管理器” 中,连接到 SQL Server 数据库引擎的实例,然后展开该实例。

  2. 展开“SQL Server 代理”,展开“作业”,右键单击要计划的作业,然后单击“属性”

  3. 选择 “计划” 页,再单击 “选取”

  4. 选择要附加的计划,然后单击 “确定”

  5. 在“作业属性”对话框中,双击附加的计划。

  6. 验证是否正确设置了 “开始日期” 。 如果该选项的设置不正确,则将日期设置为要让计划启动的日期,然后单击 “确定”

  7. “作业属性” 对话框中,单击 “确定”

“使用 Transact-SQL”

安排作业计划

  1. “对象资源管理器” 中,连接到 数据库引擎的实例。

  2. 在标准菜单栏上,单击 “新建查询”

  3. 将以下示例复制并粘贴到查询窗口中,然后单击“执行” 。

    USE msdb ;  
    GO  
    -- creates a schedule named NightlyJobs.   
    -- Jobs that use this schedule execute every day when the time on the server is 01:00.   
    EXEC sp_add_schedule  
        @schedule_name = N'NightlyJobs' ,  
        @freq_type = 4,  
        @freq_interval = 1,  
        @active_start_time = 010000 ;  
    GO  
    -- attaches the schedule to the job BackupDatabase  
    EXEC sp_attach_schedule  
       @job_name = N'BackupDatabase',  
       @schedule_name = N'NightlyJobs' ;  
    GO  
    

有关详细信息,请参阅 sp_add_schedule (Transact-SQL)sp_attach_schedule (Transact-SQL)

使用 SQL Server 管理对象

通过使用所选编程语言(如 Visual Basic、Visual C# 或 PowerShell)来使用 JobSchedule 类。 有关详细信息,请参阅 SQL Server 管理对象 (SMO)