Asp.net 如何在SQL Server中创建在特定时间执行且仅执行一次的触发器

Asp.net 如何在SQL Server中创建在特定时间执行且仅执行一次的触发器,asp.net,sql-server,stored-procedures,triggers,asp.net-core-mvc,Asp.net,Sql Server,Stored Procedures,Triggers,Asp.net Core Mvc,我想要一个触发器(或类似的东西),当它是一个特定的日期时,例如01-01(每年),只执行一次,并添加到每列+20 表:Id#,编号 我正在构建一个ASP.NET核心MVC项目,我希望能够对我的数据库执行此操作。展开SQL Server代理节点,右键单击SQL Server代理中的作业节点,然后选择“新建作业” 在“新建作业”窗口中,在“常规”选项卡上输入作业名称和说明 选择窗口左侧的“步骤”,然后单击底部的“新建” 在“步骤”窗口中,输入步骤名称并选择要针对其运行查询的数据库 将要运行的T-SQ

我想要一个触发器(或类似的东西),当它是一个特定的日期时,例如01-01(每年),只执行一次,并添加到每列+20

表:
Id#,编号


我正在构建一个ASP.NET核心MVC项目,我希望能够对我的数据库执行此操作。

展开SQL Server代理节点,右键单击SQL Server代理中的作业节点,然后选择“新建作业”

在“新建作业”窗口中,在“常规”选项卡上输入作业名称和说明

选择窗口左侧的“步骤”,然后单击底部的“新建”

在“步骤”窗口中,输入步骤名称并选择要针对其运行查询的数据库

将要运行的T-SQL命令粘贴到命令窗口中,然后单击“确定”

单击“新建作业”窗口左侧的“日程安排”菜单,输入日程安排信息(例如每天和时间)

单击“确定”-应该就是这样


(当然,您还可以添加其他选项,但我想说,这是设置和安排作业所需的最低要求)

Quartz.net调度器对此很有帮助


ISimpleTrigger trigger=(ISimpleTrigger)TriggerBuilder.Create().WithIdentity(“trigger1”,“group1”).StartAt(myStartTime)//某个日期。ForJob(“job1”,“group1”)//使用名称、组字符串标识作业。Build()

您需要的是计划作业而不是触发器创建作业并对其进行计划。触发器是由特定操作触发的-插入
更新
删除
。你不能在你选择的时候具体地执行一个“触发器”——那只是错误的方法。