公告版位
哈囉,丫德我會常常更新一些工作上的心情記事及資訊科技新知與大家分享...

在sql server中,我們也可以設定排程來執行stored procedure

做法如下

假設我寫好了一個stored procedure

image

接下來必須先確認你的sql 登入的權限是否可以開啟sql agent

image

然後在sql agent上按滑鼠右鍵,選擇新增作業

image

接下來會開窗顯示新增作業,請在名稱的部份輸入一個名稱來定義這個作業

image

接下來點選步驟,按新增

image

新增後會開窗,請照下列設定,記得資料庫要選對哦

我們類型要選transact-sql指令碼(t-sql)這個選項哦

然後在命令的部份輸入執行stored procedure的語法

之後按確定

image








接下來我們要設排程,讓這個動作可以由電腦重覆執行,比如說我們希望,每個月的第一天,早上6:00執行一次這個stored procedure的話,就可以設這個排程

我們點選排程,按新增

image

按下新增後會開窗

我們給這個排程一個名稱,畫面中綠色圈圈的部份,是指要不要啟用這個排程

你設定完後,最下方會有一個描述,讓你知道你所設的排定,講成白話文是啥意思..

設定完之後,按確定就可以了

image

最後再按確定就完成了

image





以上的動作做完後,會在sql agent中的作業中看到我們剛設定的test作業

image

以後若你想要將這個作業也copy到另一台電腦的話,可以使用下列步驟

在test上按滑鼠右鍵,接下來按照下方的步驟

image

之後會產生如下圖的code(這裡要注意,sql server2008產生出來的code要放到sql server 2005上執行會有問題,我試起來的結果會出現什麼userid錯誤,看來還是平台相同會比較沒有問題)

image

將以上的code複製到另一台sql server中的查詢視窗貼上,執行即可,這樣就算是複製/貼上囉

丫德 發表在 痞客邦 PIXNET 留言(4) 人氣()


留言列表 (4)

發表留言
  • 訪客
  • 獲益良多。謝謝。
  • Micky Lin
  • 找好久的問題...超級感謝你!!!^^馬上來試試
  • 有幫助到你也很開心

    丫德 於 2012/03/14 17:08 回覆

  • Micky Lin
  • 不過...用了之後...不知道什麼時候有執行到這一塊說..= =+
  • 你是指執行後的log嗎?
    sql server agent有log可以查看,你在你作業項目上按滑鼠右鍵就有一個歷史記錄的選項可以選擇,點了之後就可以看到執行的歷史記錄是成功還是失敗了

    丫德 於 2012/03/14 17:45 回覆

  • Micky Lin
  • 嗯嗯..我看到嚕..感恩你~~^^真的完成了耶!!!酷斃了!!
  • 恭喜你完成了

    丫德 於 2012/03/14 19:59 回覆