sql常用作業定義的T SQL模板

2021-06-26 01:07:28 字數 4694 閱讀 3420

--定義建立作業

declare @jobid uniqueidentifier

exec msdb.dbo.sp_add_job

@job_name = n'作業名稱',

@job_id = @jobid output

--定義作業步驟

declare @sql nvarchar(400),@dbname sysname

select @dbname=db_name(), --作業步驟在當前資料庫中執行

@sql=n'--作業步驟內容' --一般定義的是使用tsql處理的作業,這裡定義要執行的transact-sql語句

exec msdb.dbo.sp_add_jobstep

@job_id = @jobid,

@step_name = n'作業步驟名稱',

@subsystem = 'tsql', --步驟的型別,一般為tsql

@database_name=@dbname,

@command = @sql

--建立排程(使用後面專門定義的幾種作業排程模板)

exec msdb..sp_add_jobschedule

@job_id = @jobid,

@name = n'排程名稱',

@freq_type=4, --每天

@freq_interval=1, --指定每多少天發生一次,這裡是1天.

@freq_subday_type=0x8, --重複方式,0x1=在指定的時間,0x4=多少分鐘,0x8=多少小時執行一次

@freq_subday_interval=1, --重複週期數,這裡每小時執行一次

@active_start_date = null, --作業執行的開始日期,為null時表示當前日期,格式為yyyymmdd

@active_end_date = 99991231, --作業執行的停止日期,預設為99991231,格式為yyyymmdd

@active_start_time = 00000, --作業執行的開始時間,格式為hhmmss

@active_end_time = 235959 --作業執行的停止時間,格式為hhmmss

--新增目標伺服器

declare @servername sysname

set @servername=convert(nvarchar(128),serverproperty(n'servername'))

exec msdb.dbo.sp_add_jobserver

@job_id = @jobid,

@server_name = @servername --使用當前sql例項

--排程模板定義

--/*--日排程

exec msdb..sp_add_jobschedule

@job_id = @jobid,

@name = n'排程名稱',

@freq_type=4, --每天

@freq_interval=1, --指定每多少天發生一次,這裡是1天.

@freq_subday_type=0x8, --重複方式,0x1=在指定的時間,0x4=多少分鐘,0x8=多少小時執行一次

@freq_subday_interval=1, --重複週期數,這裡每小時執行一次

@active_start_date = null, --作業執行的開始日期,為null時表示當前日期,格式為yyyymmdd

@active_end_date = 99991231, --作業執行的停止日期,預設為99991231,格式為yyyymmdd

@active_start_time = 00000, --作業執行的開始時間,格式為hhmmss

@active_end_time = 235959 --作業執行的停止時間,格式為hhmmss

--*/

--/*--周排程

exec msdb.dbo.sp_add_jobschedule

@job_id = @jobid,

@name = n'排程名稱',

@freq_type = 8, --每週

@freq_recurrence_factor = 1, --每多少周執行一次,這裡是每週

@freq_interval = 62, --在星期幾執行,由power(2,n)表示,n的值為0~6,代表星期日~星期六,如果指定兩個,則將值相加,例如,值為65表示在星期天和星期日執行(power(2,0)+power(2,6))

@freq_subday_type = 0x8, --重複方式,0x1=在指定的時間,0x4=多少分鐘,0x8=多少小時執行一次

@freq_subday_interval = 1, --重複週期數,這裡每小時執行一次

@active_start_date = null, --作業執行的開始日期,為null時表示當前日期,格式為yyyymmdd

@active_end_date = 99991231, --作業執行的停止日期,預設為99991231,格式為yyyymmdd

@active_start_time = 00000, --作業執行的開始時間,格式為hhmmss

@active_end_time = 235959 --作業執行的停止時間,格式為hhmmss

--*/

--/*--月排程(每x個月的每月幾號)

exec msdb.dbo.sp_add_jobschedule

@job_id = @jobid,

@name = n'排程名稱',

@freq_type = 16, --每月

@freq_recurrence_factor = 2, --每多少月執行一次,這裡是每2個月

@freq_interval = 2, --在執行月的第幾天執行,這裡是第2天

@freq_subday_type = 0x8, --重複方式,0x1=在指定的時間,0x4=多少分鐘,0x8=多少小時執行一次

@freq_subday_interval = 1, --重複週期數,這裡每小時執行一次

@active_start_date = null, --作業執行的開始日期,為null時表示當前日期,格式為yyyymmdd

@active_end_date = 99991231, --作業執行的停止日期,預設為99991231,格式為yyyymmdd

@active_start_time = 00000, --作業執行的開始時間,格式為hhmmss

@active_end_time = 235959 --作業執行的停止時間,格式為hhmmss

--*/

--/*--月排程(每x個月的相對時間)

exec msdb.dbo.sp_add_jobschedule

@job_id = @jobid,

@name = n'排程名稱',

@freq_type = 32, --每月

@freq_recurrence_factor = 2, --每多少月執行一次,這裡是每2個月

@freq_interval = 9, --在當月的那個時間執行,1~7=星期日至星期六,8=日 ,9=工作日,10=週末

@freq_relative_interval = 1, --在第幾個相對時間執行,允許的值為1,2,4,8代表第1~4個相對時間,16表示最後乙個相對時間

@freq_subday_type = 0x8, --重複方式,0x1=在指定的時間,0x4=多少分鐘,0x8=多少小時執行一次

@freq_subday_interval = 1, --重複週期數,這裡每小時執行一次

@active_start_date = null, --作業執行的開始日期,為null時表示當前日期,格式為yyyymmdd

@active_end_date = 99991231, --作業執行的停止日期,預設為99991231,格式為yyyymmdd

@active_start_time = 00000, --作業執行的開始時間,格式為hhmmss

@active_end_time = 235959 --作業執行的停止時間,格式為hhmmss

--*/

--/*--在特定時候執行的作業排程

exec msdb.dbo.sp_add_jobschedule

@job_id = @jobid,

@name = n'排程名稱',

@freq_type = 64 --64=在sqlserveragent 服務啟動時執行,128=計算機空閒時執行

--*/

--/*--只執行一次的作業排程

exec msdb..sp_add_jobschedule

@job_id = @jobid,

@name = n'排程名稱',

@freq_type=1, --僅執行一次

@active_start_date = null, --作業執行的開始日期,為null時表示當前日期,格式為yyyymmdd

@active_start_time = 00000 --作業執行的開始時間,格式為hhmmss

--*/

常用作業定義的T SQL模板 sql

定義建立作業 declare jobid uniqueidentifier exec msdb.dbo.sp add job job name n 作業名稱 job id jobid output 定義作業步驟 declare sql nvarchar 400 dbname sysname sele...

String類的應用(作業)

有何不足希望大家指出 編寫乙個程式,輸出乙個字串中的英文本母個數,數字個數 public class zuoye1 if s.charat i c.charat 0 s.charat i d.charat 0 數字 system.out.println 數字 n system.out.println...

python類的應用 作業

問 建立乙個類,在類中定義兩個方法,1 geistring要能接收字串 2 printstring 要能把輸入的內容轉化成大寫,並且輸出列印 這題難度就是要找到乙個方法能將小寫的字母轉換成大寫,後來我搜到了乙個方法叫upper 知識點upper 方法 能將字串中的小寫字母輸出成大寫字母,其它數字 符...