创建作业步骤Transact-SQL

适用于:SQL ServerAzure SQL 托管实例

重要

Azure SQL 托管实例,目前大多数但并非所有 SQL Server 代理功能都受支持。 有关详细信息,请参阅 Azure SQL 托管实例与 SQL Server 之间的 T-SQL 差异

本主题介绍如何使用 SQL Server Management Studio、Transact-SQL 或 SQL Server 管理对象创建Microsoft SQL Server 代理作业步骤,以在 SQL Server 中执行 Transact-SQL 脚本。

这些作业步骤脚本可以调用存储过程和扩展存储过程。 单个 Transact-SQL 作业步骤可以包含多个批处理和嵌入式 GO 命令。 有关创建作业的详细信息,请参阅 创建作业

开始之前

安全

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

使用 SQL Server Management Studio

创建 Transact-SQL 作业步骤

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

  2. 展开 SQL Server 代理,创建新作业或右键单击现有作业,然后单击 属性

  3. 作业属性 对话框中,单击 步骤 页,然后单击 新建

  4. “新建作业步骤”对话框中,键入作业 步骤名称

  5. 类型 列表中,单击 Transact-SQL 脚本(TSQL)

  6. 命令 框中,键入 Transact-SQL 命令批处理,或单击 打开 以选择要用作命令的 Transact-SQL 文件。

  7. 单击 解析 检查语法。

  8. 语法正确时,将显示消息“分析成功”。 如果找到错误,请更正语法,然后再继续。

  9. 单击“高级”页可设置作业步骤选项,例如:作业步骤成功或失败时要执行的作、SQL Server 代理应尝试执行作业步骤的次数,以及 SQL Server 代理可以写入作业步骤输出的文件或表。 只有 sysadmin 固定服务器角色的成员才能将作业步骤输出写入作系统文件。 所有 SQL Server 代理用户可以将输出记录到表。

  10. 如果你是 sysadmin 固定服务器角色的成员,并且想要以其他 SQL 登录名身份运行此作业步骤,请从 运行方式用户 列表中选择 SQL 登录名。

使用 Transact-SQL

创建 Transact-SQL 作业步骤

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

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

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

    -- creates a job step that uses Transact-SQL  
    USE msdb;  
    GO  
    EXEC sp_add_jobstep  
        @job_name = N'Weekly Sales Data Backup',  
        @step_name = N'Set database to read only',  
        @subsystem = N'TSQL',  
        @command = N'ALTER DATABASE SALES SET READ_ONLY',   
        @retry_attempts = 5,  
        @retry_interval = 5 ;  
    GO  
    

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

使用 SQL Server 管理对象

创建 Transact-SQL 作业步骤

使用所选编程语言(如 Visual Basic、Visual C# 或 PowerShell)使用 JobStep 类。