1、使用sp_add_job 添加由 SQLServerAgent 服務執行的新作業。
2、使用sp_add_jobschedule創建作業調度。
3、使用sp_add_jobstep將一個步驟(操作)添加到作業中
下面以在汽車客運站票務系統中的腳本為例給出實際例子,在看例子之前,請先看一下上面三個系統存儲過程的幫助。在例子中使用了一個自定義的存儲過程“tksp_bakdata”,它的功能是處理當日之前售票數據(只需知道是一個自定義存儲過程就行了)。
例子1:每日0點30分處理售票數據
www.knowsky.com
use msdb
EXEC sp_add_job @job_name = 'tk_bakdata',
@enabled = 1,
@description = '每日00:30處理售票數據',
@start_step_id = 1,
@owner_login_name = 'tkuser'
exec sp_add_jobserver @job_name = 'tk_bakdata'
go
EXEC sp_add_jobschedule @job_name = 'tk_bakdata',
@name = 'Bakdata003000',
@freq_type = 4,
@freq_interval = 1,
@active_start_time = 003000
go
EXEC sp_add_jobstep @job_name = 'tk_bakdata',
@step_name = 'bakdata',
@subsystem = 'TSQL',
@command = 'EXEC tksp_bakdata ',
@database_name='ticket'
go
例子2:每日SQLServer啟動時處理售票數據,這樣在每天需要關機的服務器中也能保證處理售票數據。
use msdb
EXEC sp_add_job @job_name = 'tk_bakdata2',
@enabled = 1,
@description = '每日SQLServer啟動時處理售票數據',
@start_step_id = 1,
@owner_login_name = 'tkuser'
exec sp_add_jobserver @job_name = 'tk_bakdata2'
go