none
C#我想每个月执行一段代码,代码是要删除数据库历史数据,应该怎么写这么大的时间间隔呢? RRS feed

  • 问题

  • 如题

    做一个项目收集数据,一段时间(一般是一个或者几个月)要处理数据冗余,把没用的数据删除,创建新的数据表(文件夹)。

    我现在面临着怎么让这个程序在特定的时间执行,查了一下有说做死循环做个间隔时间执行(但是我这个间隔时间太长了好像这么做比较不靠谱);我自己的想法是做一个循环检查日期,如果是每个月执行一次的话,就是检查日期天数是1,小时是13,就是每个月1号13点执行这个整理程序。但是这个想法有个问题这个循环检查日期的程序没必要一直循环,只需要间隔很长时间循环一次就行了(因为每个月只有一个一号),这又回到了间隔时间太长的问题。希望有人能给我个比较好的方法,最好给个代码示例。我是个新手,写代码能力还不行,都是照着代码示例来写程序的。谢谢了!

    2013年1月9日 7:19

答案

全部回复

  • 用 Windows 计划任务启动你的程序,你的程序在执行完成后就直接退出。http://www.cnblogs.com/RainWaterLily/archive/2008/08/28/1278741.html

    • 已标记为答案 Mclovin 2013年1月9日 8:23
    2013年1月9日 7:26
  • 有个问题不明白,这片文章里面的代码应该写在哪?

    我在XP系统上找到了一个叫任务计划的功能,好像跟你说的这个差不多,但是不用写代码,直接选择要执行的程序,选择执行时间就行了。你说的和这个是一个方法么?

    还有一个问题是我运行这个程序清理之后要创建一个新的文件夹来储存数据(比如一月份的删除了我建一个文件夹叫二月),这个新文件夹得路径怎么传到我的收集数据的程序里?同一个程序不同窗口,类之间传参数我会。这样夸程序的就不会了……

    我的本意是:项目是一个收集数据的程序,然后我要每个月整理一次数据,删除上个月的无用数据,创建一个新的文件夹来储存这个月的数据。我是想在这个收集程序里面做一个单独的线程来执行这个功能,把文件夹路径作为一个变量,整理程序每次执行创建文件夹后会给这个变量赋值,收集程序就根据这个变量来判断储存数据的地址。

    你这个计划的方法我没理解错的话是单独一个整理的程序,这样怎么改变我收集程序中的储存路径?


    • 已编辑 Mclovin 2013年1月9日 7:57
    2013年1月9日 7:48
  • 你好!

         其实这些功能都是写在你的应用程序中的。

         每次用DateTime.Now可以获取到当前时间,获取到年和月,用来命名文件夹,然后删除前面月份的文件夹。具体代码我就不给出了,比较简单,你可以尝试一下

         希望对你有帮助。


    周雪峰

    • 已标记为答案 Mclovin 2013年1月9日 8:24
    2013年1月9日 8:17
    版主
  • 你好!

         其实这些功能都是写在你的应用程序中的。

         每次用DateTime.Now可以获取到当前时间,获取到年和月,用来命名文件夹,然后删除前面月份的文件夹。具体代码我就不给出了,比较简单,你可以尝试一下

         希望对你有帮助。


    周雪峰


    谢谢,说道点子上了,给我启发了。用规则的文件夹名称就可以实现储存路径的问题。
    2013年1月9日 8:23
  • 你好!

         不客气,很高兴和你讨论这个问题啊,欢迎常来。


    周雪峰

    2013年1月9日 9:19
    版主