我需要每月一次将一些数据从 SQL Server 传输到 MySQL。我已经完成了这个转移的工作,但我不知道(而且我还没有在互联网上找到)如何设置一个计时器来执行这个转移每个月的特定日期。我不想只是以毫秒为单位设置计时器间隔,因为天数因一个月而异。
任何帮助表示赞赏...
我需要每月一次将一些数据从 SQL Server 传输到 MySQL。我已经完成了这个转移的工作,但我不知道(而且我还没有在互联网上找到)如何设置一个计时器来执行这个转移每个月的特定日期。我不想只是以毫秒为单位设置计时器间隔,因为天数因一个月而异。
任何帮助表示赞赏...
这听起来像是您应该将其设置为计划任务或 SQL 服务器作业,而不是通过计时器让进程运行一个月?
链接:
我想您也可以将任务设置为 Windows 服务,并通过数据库中的设置检查您上次进行更新的时间,但这似乎有点矫枉过正。从它的声音来看,您已经有一个可以完成这项工作的 C# 应用程序设置,所以我只需执行一个计划的 Windows 任务。
您可以使用 Windows 任务计划程序来完成此类工作。在此处查找命令行选项Schtasks
(有很多)
示例 1:
安排在每个月的第一天运行的任务
以下命令安排 MyApp 程序在每个月的第一天运行。因为值 1 是 /mo(修饰符)参数和 /d(天)参数的默认值,所以从命令中省略了这些参数。
schtasks /create /tn "My App" /tr myapp.exe /sc monthly
示例 2:
安排第 15 天的任务
以下命令安排 MyApp 程序在每月 15 日下午 3:00 (15:00) 运行。它使用 /d 参数来指定日期。它还使用 /st 参数来指定开始时间。
schtasks /create /tn "My App" /tr myapp.exe /sc monthly /d 15 /st 15:00