[转]SQL Server 2000定时执行SQL语句

如果再不写些技术文章,这个博客就真变成旅游日记了,也难怪那个网友问我是不是记者……

 

这篇是转载的,但是却是自己一直想找的方法,在这里和大家分享。试想这样一个情境:

 

如果你维护的数据表一方面依靠其他模块的数据表,另一方面又对其他模块进行数据支持,并且这些表都是实时更新的,那么就不能通过页面调用SQL语句等方式来更新数据表,只能让数据表定时自动更新。我不知道存储过程等能否实现,但是SQL Server 2000的作业调度确实有这样的功能,怎样使某些SQL语句定时执行呢,依次进行下面的操作:

 

企业管理器   
  --管理   
  --SQL   Server代理   
  --右键作业   
  --新建作业   
  --“常规”项中输入作业名称   
  --“步骤”项   
  --新建   
  --“步骤名”中输入步骤名   
  --“类型”中选择“Transact-SQL   脚本(TSQL)”   
  --“数据库”选择执行命令的数据库   
  --“命令”中输入要执行的语句:   
                                                INSERT     DELETE   ...   
   
  --确定   
  --“调度”项   
  --新建调度   
  --“名称”中输入调度名称   
  --“调度类型”中选择你的作业执行安排   
  --如果选择“反复出现”
  --点“更改”来设置你的时间安排

 

(我们可以看到,最高的频率是在“每日频率”中将发生周期设置为1分钟,也就是说用这种方法可以保证1分钟的实时性,对于实时性要求不高的应用来说,这就足够了)   

 

最后要将SQL Agent服务启动,并设置为自动启动,否则你的作业不会被执设置SQL Agent服务自动启动的方法:我的电脑--控制面板--管理工具--服务--右键   SQLSERVERAGENT--属性--启动类型--选择“自动启动”--确定。

 

设置完之后呢,就可以在企业管理器中的“作业”中看到新建的作业名称了,如果作业的“启用”状态是“否”,则在作业那一行点“右键”-“启动作业”即可。

posted @ 2010-05-08 00:23  rob_2010  阅读(142)  评论(0)    收藏  举报