欢迎来到天天文库
浏览记录
ID:24190772
大小:53.00 KB
页数:4页
时间:2018-11-13
《sql server通过代码执行代理任务--》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、SQLServer通过代码执行代理任务>> 今天被人问到,假如我们需要在代码中执行SQLServer的代理任务,那么有什么思路呢? 我马上想到,一般会有两种思路 1.通过SMO(SQLServerManagementObjectModel) 2.通过存储过程 下面首先介绍的是通过SMO的手段 1.首先要添加两个程序集的引用 2.然后编写代码using Microsoft.SqlServer.Management.Smo;using Microsoft.SqlServer.Management.Smo.Agent; /// ///
2、 列出某个服务器上面所有的代理作业/// :陈希章/// /// /// private void btList_Click(object sender, EventArgs e){Server svr = ne in svr.JobServer.Jobs){lstJobs.Items.Add(item);}}/// /// 双击运行某个作业/// :陈希章/// /// /// private void lstJobs_MouseDoubleClick(object sender, MouseEventArgs e){Job item = l
3、stJobs.SelectedItem as Job;item.Start();} 图片看不清楚?请点击这里查看原图(大图)。 这是相当方便的。但有一个问题就是SMO这种操作必须在服务器由管理员身份执行。 那么,有没有办法在T-SQL中通过存储过程的方式调用呢? 1.首先要知道的是,Job的信息是放在MSDB的,所以需要在MSDB里面想办法。而且也应该让调用方具有MSDB的一些权限 图片看不清楚?请点击这里查看原图(大图)。 2.我们很快就定位到了这个存储过程sp_start_job。下面是一个范例USE msdb ;GO EXEC
4、 dbo.sp_start_job N'THINKER-demo-demo_products_merge-THINKER-1' ;GO 相比较而言,用T-SQL的方式更加易于实现。 图片看不清楚?请点击这里查看原图(大图)。>>>>这篇文章来自..,。
此文档下载收益归作者所有