windows计划任务执行SQLserver脚本

2016年3月1号,北京出差,documentbrowser系统改善上线。mysql

其中有一个数据库表须要天天进行同步,原计划使用SQLServer的做业来执行又方便又快捷,可是客户的数据库是05的express版没有数据库做业。客户系统已经使用多年,若是升级数据库正式版会存在必定的风险,一担升级失败,客户的生产环境瘫痪,耽误了客户那就很差了。该怎么办呢?首先想到是用Windows服务,在系统启动时自动执行服务,在服务中天天定时执行数据库同步任务,可是须要编写程序并制做成.exe安装程序,有点麻烦,不适合如今的状况。sql

后来想了想,用windows本身的计划任务,天天定时执行.bat文件,在bat文件中执行数据库同步脚本,又方便又快捷还安全。下面就把步骤写一下,做为备忘。数据库

一.windows计划任务执行数据库脚本手顺express

 

1.  将updateExtend08Extend09.bat和mysql.sql拷贝到c盘后,以下图windows

 

2.  在Windows的控制面板找到“计划任务”,并双击进入设置安全

 

3.  点击“添加任务计划”建立一个新的计划任务ui

 

4.下一步spa

 

5.选择“浏览。。。”3d

 

6.选择c盘下的“updateExtend08Extend09.bat”点击“打开”code

 

7.选择“天天”执行任务,下一步:

 

8.设置执行时间和起始日期,点击;下一步

 

9.输入本机的登陆名和密码,点击下一步

 

10.点击完成设置完毕。

 

 

二.在数据库中执行“数据库脚本.txt”建立存储过程

 

 1 CREATE PROCEDURE [dbo].[SP_UpdateUserExtend08andExtend09]
 2 
 3 AS
 4 BEGIN
 5     -- SET NOCOUNT ON added to prevent extra result sets from
 6     -- interfering with SELECT statements.
 7     SET NOCOUNT ON;
 8 
 9     --员工(包括专家)审批人为上级经理    
10     update AddressTBL 
11     set Extend08=b.mgr_code,
12         Extend09=b.mgr_name
13     from (
14         select uid, mgr_code,mgr_name from View_ApprovalLine
15     ) as b 
16     where AddressTBL.UserID=b.uid collate Chinese_PRC_CI_AI_WS
17         and AddressTBL.Extend03='ECC'
18         and AddressTBL.Extend02 in('特殊雇员','业务经理','主管','助理','专家','专员')
19         
20         
21     --经理(包括高级专家)审批人为上级部门经理
22     
23     update AddressTBL 
24     set Extend08=b.dm_code,
25         Extend09=b.dm_name
26     from (
27         select uid, dm_code,dm_name from View_ApprovalLine
28     ) as b 
29     where AddressTBL.UserID=b.uid collate Chinese_PRC_CI_AI_WS
30         and AddressTBL.Extend03='ECC'
31         and AddressTBL.Extend02 in('经理')
32     
33     --部门经理及以上同步为法务窗口
34     update AddressTBL 
35     set Extend08='ecclegal',
36         Extend09='法务窗口'
37     where AddressTBL.Extend03='ECC'
38         and AddressTBL.Extend02 in ('部门经理','董事长','副总经理','高级总监','总监','总经理','其余')
39     
40     
41 END

脚本运行后会在dbrowser_address库中建立一个新的存储过程。

 

三.修改批处理文件,设置数据库连接地址和数据库用户,数据库密码

找到C:\updateExtend08Extend09.bat右键选择编辑

 

将红框中的数据库地址,用户名和密码替换成本机的便可。

sqlcmd -?查看命令参数

mysql.sql代码:

1 use dbrowser_address
2 go
3 exec SP_UpdateUserExtend08andExtend09
4 go

 

这个例子把批处理文件和my.sql脚本放到了c盘,只是为了举例说明,能够按照实际状况将两个文件放到任意位置(路径中最好不要有中文),而后在设置计划任务时指定.bat便可。

相关文章
相关标签/搜索