【问题标题】:How do I insert into a column and after some time change myself automatically如何插入列并在一段时间后自动更改自己
【发布时间】:2017-12-12 17:32:58
【问题描述】:

我想知道,在输入“客户”后,它如何在列(“状态”)中显示为“已联系”,并在 15 天后自动变为“未联系”。

我没有成功 .. 我尝试在“日期时间”和“状态”列之间使用“选择”,但是 .. 它没有显示任何内容 .. 和 ..

最初我需要插入..它必须在这 15 天后自动更改..但我无法成功..

【问题讨论】:

  • 第 1 步 - 编写并测试适当的查询。第 2 步 - 安排它每天运行。
  • 您将需要两列,1 - 状态和 2 - 更新日期,在您的数据库中创建一个每天运行的作业,执行一个查询,当更新日期小于 X 时更新状态天

标签: c# sql visual-studio


【解决方案1】:

您可以在 C# 中通过运行计划作业来查找过时的客户端,并将状态设置为“未联系”来实现。例如

var staleClients = Clients.Where(x=> x.DateCreated.AddDays(15) < DateTime.UtcNow);
staleClients.Status = "Uncontacted";
dbContext.Save();

Hangfire 是运行计划任务的一种可能选项。

否则,数据库中的计划作业可以执行与上述相同的功能。例如

update Clients
set status = 'Uncontacted'
where DateCreated < dateadd(day, -15, getdate()) and status <> 'Uncontacted'

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-06
    相关资源
    最近更新 更多