sql常用作业定义的T-SQL模板

--定义创建作业

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

    @[email protected],

    @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

--*/

时间: 2024-10-01 05:09:15

sql常用作业定义的T-SQL模板的相关文章

oralce数据库常用到的一些sql命令(加字段注释,修改数据之类)

最近开始接触oralce,整理了一下最近使用 pl/sql 常用到的一些sql命令 1.修改表中的数据 编写查询语句及条件,然后加上"FOR UPDATE","FOR UPDATE"是获得OACLE的修改权限,执行这条查询语句,查询出对应的记录 select * from sys_svr FOR UPDATE 2.向一个表中添加字段和注释 alter table appr_control_info_ex add control_seq VARCHAR2(30); -

SQL常用语法大全

一.基础1.说明:创建数据库CREATE DATABASE database-name 2.说明:删除数据库drop database dbname3.说明:备份sql server--- 创建 备份数据的 deviceUSE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'--- 开始 备份BACKUP DATABASE pubs TO testBack 4.说明:创建新表create

SQL 常用语句

–-表现最差的前10名使用查询 SELECT TOP 10 ProcedureName = t.text, ExecutionCount = s.execution_count, AvgExecutionTime = isnull ( s.total_elapsed_time / s.execution_count, 0 ), AvgWorkerTime = s.total_worker_time / s.execution_count, TotalWorkerTime = s.total_wo

SQL常用语句积累

SQL 常用语句积累: 一. SQL 基本语句 SQL 分类: DDL -数据定义语言 (Create , Alter , Drop , DECLARE) DML -数据操纵语言 (Select , Delete , Update , Insert) DCL -数据控制语言 (GRANT , REVOKE , COMMIT , ROLLBACK) 首先 , 简要介绍基础语句: 1 .说明:创建数据库 Create DATABASE database-name 2 .说明:删除数据库 drop d

数据库基本查询语句(SQL常用增删改查语句 简单复习 mark)

SQL常用增删改查语句 1增 1.1[插入单行]insert [into] <表名> (列名) values (列值)例:insert into Strdents (姓名,性别,出生日期) values ('开心朋朋','男','1980/6/15') 1.2[将现有表数据添加到一个已有表]insert into <已有的新表> (列名) select <原表列名> from <原表名>例:insert into tongxunlu ('姓名','地址','

.Net常用技巧_获取SQL Server表字段的各种属性

-- SQL Server 2000 SELECT a.name AS 字段名, CASE WHEN EXISTS (SELECT 1 FROM sysobjects WHERE xtype = 'PK' AND parent_obj = a.id AND name IN (SELECT name FROM sysindexes WHERE indid IN (SELECT indid FROM sysindexkeys WHERE id = a.id AND colid = a.colid))

sql常用的星期方法

sql常用的星期方法: SELECT convert(varchar(10),DATEADD(wk, DATEDIFF(wk,0,getdate()), 0),120) --本周开始周一SELECT convert(varchar(10),DATEADD(wk, DATEDIFF(wk,5,getdate()), 6),120) --本周结束周五select datename(week,getdate()) --本年的第几周 可以不用convert,这边是为了做比较数字,取时间段,所以都转化为字

SQL常用语句集合(不断更新)

1.多条件 查询 上下级 所有数据 select * from OrgUnit where (ParentId = '3' or OrgId='3' or ParentId in (select OrgId from OrgUnit where ParentId='3')) 2.相同列数的 多个查询结果 组合(union all) select a,b,c from table1 union all select ca,cb,cc from table2 3.左外连接 与 右外连接 (left

PL/SQL常用设置 可看引用位置更清晰直观 引自:http://blog.csdn.net/xiaoqforever/article/details/27695569

引自:http://blog.csdn.net/xiaoqforever/article/details/27695569 1,登录后默认自动选中My Objects 默认情况下,PLSQL Developer登录后,Brower里会选择All objects,如果你登录的用户是dba,要展开tables目录,正常情况都需要Wait几秒钟,而选择My Objects后响应速率则是以毫秒计算的. Tools菜单 --> Object Brower Filters,会打开Brower Folders