sql - 使用输入参数为存储过程创建 SQL Server 代理作业

标签 sql sql-server tsql stored-procedures sql-agent-job

您能否建议如何为具有 1 个输入参数的存储过程创建 SQL Server 代理作业?

该过程已正确创建,我使用以下代码执行它:

EXECUTE dbo.MYProcedure N'2016-02-25';

有没有办法为此具有参数的过程创建 SQL Server 代理作业?

所以我正在尝试将 EXECUTE dbo.MYProcedure N'2016-02-25'; 中的这个 ligne 添加到工作步骤窗口的基本方法
但是参数可以改变

最佳答案

这是步骤

  • 在 SQL management studio 中,右键单击您所连接的 SQL Server 下的“SQL Server Agent”。
  • 选择新工作。
  • 输入作业名称,然后单击步骤
  • 单击屏幕底部的“新建”。
  • 输入步骤名称。
  • 类型:保持选择为 Transact SQL
  • 输入: EXECUTE dbo.MYProcedure N'2016-02-25';

  • 现在保存它,它应该可以手动运行了。
    如果您确实想要自动化,则通过进入 SQL management studio 中 SQL Server Agent 下的作业监视器打开作业,然后单击计划并提供您希望作业运行的时间和频率。

    如果您自动化日期参数,则将其添加为您的 Transact SQL 语句:
    DECLARE @DATE DATETIME
    --Trim out the time so the date is set to 2016/02/25
    --and time changes to 00:00 get date will get todays
    --date or the run date
    SET @DATE = DATEADD(DD,0,DATEDIFF(DD,0,GETDATE()))
    EXECUTE dbo.MYProcedure @DATE
    

    快乐编码!!!

    关于sql - 使用输入参数为存储过程创建 SQL Server 代理作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35633687/

    相关文章:

    tsql - 从字符串转换日期和/或时间时转换失败错误

    mysql - WordPress $wpdb 在外部 SQL 数据库上准备

    sql-server - 替换Sql中@后面的所有电子邮件地址

    mysql - 按 COUNT(*) 过滤?

    sql - 比较是什么意思,为什么不显示 true 或 false?

    sql - 我如何在 sql server 2005 中将行转换为列

    sql - 如何处理 & XML 格式的字符

    tsql - 添加一列并在 SQL Server 2008 中的同一存储过程中更新它

    php - 您的 SQL 语法有误;查看手册

    sql - Oracle 正则表达式忽略重复字符