服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Sql Server - SQLServer 2000定时执行SQL语句

SQLServer 2000定时执行SQL语句

2019-12-02 15:34mdxy-dxy Sql Server

如果你维护的数据表一方面依靠其他模块的数据表,另一方面又对其他模块进行数据支持,并且这些表都是实时更新的,那么就不能通过页面调用SQL语句等方式来更新数据表,只能让数据表定时自动更新。

我不知道存储过程等能否实现,但是SQL Server 2000的作业调度确实有这样的功能,怎样使某些SQL语句定时执行呢,依次进行下面的操作: 

企业管理器 
--管理 
--SQL Server代理 
--右键作业 
--新建作业 
--“常规”项中输入作业名称 
--“步骤”项 
--新建 
--“步骤名”中输入步骤名 
--“类型”中选择“Transact-SQL 脚本(TSQL)” 
--“数据库”选择执行命令的数据库 
--“命令”中输入要执行的语句: 
INSERT / DELETE ... 
--确定 
--“调度”项 
--新建调度 
--“名称”中输入调度名称 
--“调度类型”中选择你的作业执行安排 
--如果选择“反复出现” 
--点“更改”来设置你的时间安排 
(我们可以看到,最高的频率是在“每日频率”中将发生周期设置为1分钟,也就是说用这种方法可以保证1分钟的实时性,对于实时性要求不高的应用来说,这就足够了) 
最后要将SQL Agent服务启动,并设置为自动启动,否则你的作业不会被执设置SQL Agent服务自动启动的方法:我的电脑--控制面板--管理工具--服务--右键 SQLSERVERAGENT--属性--启动类型--选择“自动启动”--确定。 
设置完之后呢,就可以在企业管理器中的“作业”中看到新建的作业名称了,如果作业的“启用”状态是“否”,则在作业那一行点“右键”-“启动作业”即可。 

第二种方法:下面我们来介绍下如何通过bat来实现,上面的配置确实繁琐。

1.把要执行的SQL语句准备好,例如:

use ttNew //使用ttNew数据库
Go
insert into Users(name) values(" ") //往表Users插入一条记录
将该语句保存在文件user.sql里,放在d盘跟目录下。

2.写一个批处理文件,例如:

再新建一个记事本,里边写上语句osql -E -i d:\user.sql,保存为11.bat

3.利用系统任务计划调用批处理文件,执行SQL语句


在系统程序->附件->系统工具->任务计划
添加新任务计划,点下一步,再点浏览,找到11.bat文件,后,选择执行时间,点下一步。一直点,最后输入本机的密码,点完成。 

延伸 · 阅读

精彩推荐