回答
创建Windows Service,使在Windows启动时,建立一个timer它开始,创建一个event用于处理定时器的elapsed event,你是好去。
时间存储在数据库中是绝对必要的吗?通常,他们使用外部调度程序服务(任务计划程序或SQL代理)。并通过运行带有服务URL的命令行HTTP客户端来调用该服务。例如,Curl可以工作,或者您可以使用XMLHTTP调用将快速JavaScript放在一起,并用cscript.exe调用它。另外,如果数据处理可以完全实现为存储过程,则不需要Web服务和shell脚本。直接从SQL Agent调用该过程(假定为MS SQL Server)。
编辑:那么你已经相当复杂的设计。说,你想要多长时间?你想把时间精确到一分钟,一小时,一天吗?如果期望的精确度是几分钟内的事情,那么你可以做什么。在数据库中有一个过程。让它在精度边界上执行(通过SQL代理) - 比如每5分钟执行一次。让它检查是否现在是运行服务的时间。如果是这样,请让它调用服务。 XMLHTTP和OLE自动化可能是要走的路;查看系统过程sp_OACreate,sp_OAMethod。事情是这样的:sp_OAxxx都认为,理所当然,非常不安全,有需要相当的权限来运行
declare @o int
exec sp_OACreate 'Msxml2.XMLHTTP', @o output
exec sp_OAMethod @o, 'open', @bstrMethod='GET', @bstrUrl='http://what-have-you/'
exec sp_OAMethod @o, 'send'
程序。
是的时间将在数据库中设置。否数据处理不能作为存储过程实现。所以我需要一个web服务。那么我怎么能使用webservice – 2011-03-26 04:24:50
Web服务不适合执行此任务。它们旨在响应请求而运行。您需要运行代码来响应一天的时间。
我同意创建Windows服务的建议。如果你不想这样做,那么创建一个简单的控制台应用程序,并通过计划任务运行它。
- 1. jquery + Simplemodal onshow方法只执行一次
- 2. 爪哇 - 执行方法只有一次
- 3. 每天执行一次代码
- 4. iOS - 每天只对TodayViewController(Widget)执行一次操作
- 5. 执行JavaScript,每周只有一次
- 6. 每天,每周,每月只显示一次uialertview一次?
- 7. 计划执行程序的计划方法只执行一次
- 8. 每次执行一个方法后暂停一次
- 9. Laravel - 如何自动每天调用一次方法
- 10. 将行动限制为每天一次
- 11. 如何在准确时间每天执行一次动作
- 12. 只启动一次方法
- 13. UITableView的问题:动作只能每隔一秒执行一次
- 14. 执行的方法动态
- 15. .bashrc代码在第一次登录时每天执行1次
- 16. 只有$。每一次执行似乎被执行
- 17. 只执行一次代码。并非每次启动应用程序
- 18. 每天<我一天自动执行一个脚本>
- 19. TimerTask启动停止只执行一次
- 20. 每x秒执行一次动作delphi
- 21. 动态表内的按钮执行JQuery函数只有一次
- 22. 每次迭代只有一次调用方法
- 23. Javascript - 每x秒执行一次函数,但只执行三次函数
- 24. 只执行一次SQL函数一次
- 25. 只执行一次Sql命令一次
- 26. 功能只执行一次
- 27. MultiTrigger只执行一次
- 28. 只执行一次功能
- 29. 只执行completeAjax一次
- 30. NSTask只执行一次
这种方式矫枉过正,恕我直言。调度程序是一打的。 – 2011-03-26 04:11:31
@Seva可能过度杀伤,但基于@PARTH提供的信息,我明白他想要一个自动化过程。 – vlad 2011-03-26 04:13:31
@vlad:是的,但不能使用web服务完成? – 2011-03-26 04:22:43