自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

SQL Server通過代碼執(zhí)行代理任務

數(shù)據(jù)庫 SQL Server 數(shù)據(jù)庫運維
這里將為大家講述如何在SQL Server中,通過代碼執(zhí)行代理任務。通過執(zhí)行代理任務,能極大的簡化我們的操作,提高工作效率。

今天被人問到,假如我們需要在代碼中執(zhí)行SQL Server 的代理任務,那么有什么思路呢?

我馬上想到,一般會有兩種思路

1. 通過SMO(SQL Server Management Object Model)

2. 通過存儲過程

下面首先介紹的是通過SMO的手段

1. 首先要添加兩個程序集的引用

image

2. 然后編寫代碼

using Microsoft.SqlServer.Management.Smo;
using Microsoft.SqlServer.Management.Smo.Agent;

 

///


/// 列出某個服務器上面所有的代理作業(yè)
/// 作者:陳希章
///

///
///
private void btList_Click(object sender, EventArgs e)
{
    Server svr = new Server("Thinker");
    foreach (Job item in svr.JobServer.Jobs)
    {
        lstJobs.Items.Add(item);
    }
}
///
/// 雙擊運行某個作業(yè)
/// 作者:陳希章
///

///
///
private void lstJobs_MouseDoubleClick(object sender, MouseEventArgs e)
{
    Job item = lstJobs.SelectedItem as Job;
    item.Start();
}

image

這是相當方便的。但有一個問題就是SMO這種操作必須在服務器由管理員身份執(zhí)行。

那么,有沒有辦法在T-SQL中通過存儲過程的方式調用呢?

1. 首先要知道的是,Job的信息是放在MSDB的,所以需要在MSDB里面想辦法。而且也應該讓調用方具有MSDB的一些權限

image

2. 我們很快就定位到了這個存儲過程sp_start_job。下面是一個范例

USE msdb ;
GO

EXEC dbo.sp_start_job N'THINKER-demo-demo_products_merge-THINKER-1' ;
GO

相比較而言,用T-SQL的方式更加易于實現(xiàn)。

image

【編輯推薦】

  1. Oracle與SQL Server之間的數(shù)據(jù)遷移
  2. SQL Server置疑數(shù)據(jù)庫解決方法
  3. SQL Server群集的幾個關鍵技巧
責任編輯:彭凡 來源: cnblogs
相關推薦

2015-04-22 14:17:45

SQL SERVERMSSQL SERVE緩沖區(qū)

2010-10-21 16:04:13

SQL Server代

2010-10-20 17:00:51

SQL Server代

2010-11-10 11:21:50

SQL Server代

2011-03-03 10:45:51

2010-11-12 09:58:34

SQL存儲過程

2010-09-27 15:24:11

SQL Server

2011-07-26 17:45:12

SQL Server 定期自動備份

2010-07-16 11:19:35

SQL Server數(shù)

2010-07-20 17:47:12

2017-07-20 21:06:44

PythonExcelSQL

2011-09-02 14:05:25

SQL Server性能調優(yōu)

2010-09-06 13:17:19

SQL Server語句

2010-11-12 11:48:15

2010-07-16 17:03:35

SQL Server

2010-07-06 16:52:17

SQL Server創(chuàng)

2010-07-06 17:09:45

SQL Server索

2010-06-28 13:56:16

SQL Server代

2011-04-06 14:16:49

SQL Server自動備份

2010-07-06 09:33:07

SQL Server遠
點贊
收藏

51CTO技術棧公眾號