在预定义的时间运行SQL查询

时间:2011-02-03 07:28:16

标签: c# sql email report

我是C#的新手。

我必须编写一个应用程序,它会在每天的同一时间自动在多个预定义的数据库上运行多个预定义的sql查询。然后,应用程序必须从查询中获取此信息并将其编译为1个表单/报告,然后将此表单/报告发送到预定义的电子邮件地址。 所有这一切必须每天同时自动发生。

我知道如何连接数据库并在C#应用程序中对其运行查询;我也知道如何通过C#应用程序向表单/报表发送电子邮件。

我的问题是:

  1. 如何让这个应用程序每天在预定义的时间自动运行
  2. 如何将所有这些信息汇编成 1 表单/报告(我使用多个数据库和多个查询)
  3. 我认为这可能是一个控制台应用程序?

    我无法在任何地方找到任何引用。 任何帮助都会非常感激。

    提前致谢!

3 个答案:

答案 0 :(得分:2)

不要试图自己构建这个逻辑。我已经完成了几次而且不值得。

  1. 您应该使用内置的Windows计划程序。您可以设置应用程序运行的时间,应该重新生成的频率等等。控制台应用程序或Windows服务就可以了。

  2. 如果不了解您的应用程序的结构,这很难回答。您是否只是运行查询并将结果合并到报告中?

答案 1 :(得分:2)

Windows调度程序或unix cron作业在特定时间运行您的应用程序是常用的方法。

答案 2 :(得分:0)

您可以为Windows执行任务 http://support.microsoft.com/kb/308569 您可以合并来自多个DataTables的信息