【问题标题】:How to update table values automatically every day如何每天自动更新表值
【发布时间】:2013-12-02 07:28:28
【问题描述】:

我有过期日期表,如果过期日期小于今天的日期,我必须更新标志IsExpired = 1。我尝试过安排工作,但没有发生。

我尝试了以下步骤:

  • 我创建了一个存储过程来更新列
  • 然后我创建了一个计划,该计划将在每天上午 12:00 运行(执行存储过程)

【问题讨论】:

  • 您的程序在您手动执行时是否有效?
  • 那么作业没有执行还是执行过程中有错误?
  • 当我执行我的程序时它工作正常,并且在创建作业计划期间我没有任何错误。 @Amirreza Keshavarz,@peterSmith
  • 那么你的问题到底是什么?请确保计划正在运行
  • 您将不得不告诉我们的不仅仅是“它没有发生”。如果您成功地安排了一项工作(没有错误),并且您的程序有效,那么 正在发生(或未发生)什么?作业(尝试)是否运行?当它这样做时会发生什么 - 是否有可以检查的日志输出?除此之外,仅动态得出“价值”有什么问题(尤其是因为随着您的表格变大,工作不会立即完成)?

标签: sql sql-server stored-procedures sql-server-2008-r2


【解决方案1】:

您可以通过检查当前日期和到期日期来创建一个填充其 IsExpired 列的视图。然后,您可以从此视图中选择以了解某行是否已过期。

【讨论】:

  • 获取过期的行没有问题。但问题是,安排工作。重新启动我的 sql server services 和 sql agent 后,它工作正常。
  • 将您的问题标记为已回答。
  • 接受您自己的答案。单击答案的向下投票箭头下方的勾号。您必须等待 48 小时才能接受自己的答案。
【解决方案2】:

确保所有必需的身份验证均正确无误。我的意思是(SQL 代理用户名和密码)。 重新启动 Sql Server Services 和 Sql Agent。然后开始你的工作计划。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-04
    • 1970-01-01
    • 1970-01-01
    • 2018-09-06
    • 1970-01-01
    相关资源
    最近更新 更多