sql语句创建脚本作业

服务器比较多的情况下,创建作业的最好办法就是写脚本,用sql脚本可以提高效率,比手动更高效。

我自己的经验如下两种方式:

首先手动添加脚本

第一步


第二步


第三步


第四步


第五步


第六步


下面就是用sql写作业了

这个是我自己的写的例子

DECLARE @jobidin uniqueidentifier 

EXEC msdb.dbo.sp_add_job 
    @job_name = N'sqlStarRankSnapShot',  --作业名称
    @job_id = @jobidin OUTPUT          

DECLARE @sqlein nvarchar(400),@dbnamein sysname 
SELECT @dbnamein=DB_NAME(),  --作业步骤在当前数据库中执行 
    @sqlein=N'exec insertDataToStarFashionTotal'   --一般定义的是使用TSQL处理的作业,这里定义要执行的Transact-SQL语句 
EXEC msdb.dbo.sp_add_jobstep 
    @job_id = @jobidin, 
    @step_name = N'sqlStarSnapShot',      
    @subsystem = 'TSQL', --步骤的类型,一般为TSQL 
    @database_name=@dbnamein, 
    @command = @sqlein 
  
--创建调度(使用后面专门定义的几种作业调度模板) 
EXEC msdb..sp_add_jobschedule 
    @job_id = @jobidin, 
    @name = N'timerStarSnapShot', 
    @freq_type=4,                --每天 
    @freq_interval=1,            --指定每多少天发生一次,这里是1天. 
   -- @freq_subday_type=0x8,       --重复方式,0x1=在指定的时间,0x4=多少分钟,0x8=多少小时执行一次 
   --@freq_subday_interval=24,     --重复周期数,这里每小时执行一次 
    @active_start_date = NULL,   --作业执行的开始日期,为NULL时表示当前日期,格式为YYYYMMDD 
    @active_end_date = 99991231, --作业执行的停止日期,默认为99991231,格式为YYYYMMDD 
    @active_start_time=000000 --,   --作业执行的开始时间,格式为HHMMSS 
   -- @active_end_time = 164009   --业执行的停止时间,格式为HHMMSS 
  
--添加目标服务器 
DECLARE @servernamin sysname 
SET @servernamin=CONVERT(nvarchar(128),SERVERPROPERTY(N'ServerName')) 
EXEC msdb.dbo.sp_add_jobserver  
    @job_id = @jobidin, 

    @server_name = @servernamin --使用当前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  
--*/ 


卷序列号码为 00000030 4489:1826 C:. │ sqlserver2000.txt │ ├─第01章 │ 1.9.1 设置内存选项.sql │ 1.9.2(2) 使用文件及文件组.sql │ 1.9.2(3) 调整tempdb数据库的文件属性.sql │ ├─第02章 │ │ 2.1 日期概念理解中的一些测试.sql │ │ 2.2.4 CONVERT在日期转换中的使用示例.sql │ │ 2.3.3 SET DATEFORMAT对日期处理的影响.sql │ │ 2.3.4 SET LANGUAGE对日期处理的影响示例.sql │ │ 2.4.1 日期格式化处理.sql │ │ 2.4.2 日期推算处理.sql │ │ 2.4.3 特殊日期加减函数.sql │ │ 2.5.1 查询指定日期段内过生日的人员.sql │ │ 2.5.2 生成日期列表的函数.sql │ │ 2.5.3 工作日处理函数(标准节假日).sql │ │ 2.5.3 工作日处理函数(自定义节假日).sql │ │ 2.5.4 计算工作时间的函数.sql │ │ │ └─其他 │ 交叉表.sql │ 任意两个时间之间的星期几的次数-横.sql │ 任意两个时间之间的星期几的次数-纵.sql │ 复杂年月处理.sql │ 统计--交叉表+日期+优先.sql │ ├─第03章 │ │ 3.2 各种字符串分拆处理函数.sql │ │ 3.3 各种字符串合并处理示例.sql │ │ 3.4.1 分段截取函数.sql │ │ 3.4.2 分段更新函数.sql │ │ 3.4.3 IP地址处理函数.sql │ │ 3.5.1 字符串比较函数.sql │ │ 3.5.2 字符串并集&交集处理示例.sql │ │ 3.5.3 字符串分拆并统计的处理示例.sql │ │ 3.5.5 字符串处理示例--列车车次查询.sql │ │ 3.6.2 字符串在编号查询中的应用示例及常见问题.sql │ │ 3.6.3 动态参数的存储过程示例.sql │ │ 3.6.4 动态他Transact-SQL语句处理中的常见问题演示.sql │ │ 3.7.3 text与ntext字段的复制和合并处理示例.sql │ │ 3.7.4 text与image字段转换处理示例.sql │ │ 3.7.5 ntext字段的REPLACE处理示例.sql │ │ │ └─其他 │ varbinary转换成字符串.sql │ 关键字搜索.sql │ 分解公式.sql │ 字符串分拆--格式化.sql │ 得到一个字符串在另一个字符串中出现的次数.sql │ 数字转换成十六进制.sql │ 比较第一与第二个字符串,是否有连续的5个字符相同.sql │ 生成查询的模糊匹配字符串.sql │ 简繁转换.sql │ 统计一个表中某个字符出现最多的字母.sql │ 非法字符串处理.sql │ ├─第04章 │ │ 4.1.5 在各种处理中应用排序规则的示例.sql │ │ 4.2.1 排序规则在拼音处理中的应用.sql │ │ 4.2.2 排序规则在全角与半角处理中的应用.sql │ │ │ └─其他 │ 生成GB2312汉字表.sql │ 生成GBK汉字表.sql │ 自动获取汉字笔画.sql │ ├─第05章 │ │ 5.1.1 SET IDENTITY_INSERT 中的几个问题.sql │ │ 5.1.1 修改标识值的示例.sql │ │ 5.1.1 标识列与普通列互相转换的示例.sql │ │ 5.2.1 查表法按日期生成流水号的示例.sql │ │ 5.2.1 查表法生成流水号的示例.sql │ │ 5.2.2 使用编号表按日期生成流水号的示例.sql │ │ 5.2.2 使用编号表生成流水号的示例.sql │ │ 5.2.3 生成纯字母随机编号的示例(仅大小或者小).sql │ │ 5.2.3 生成纯字母随机编号的示例(大小混合).sql │ │ 5.2.3 生成纯数字随机编号的示例.sql │ │ 5.3.2 融合了补号处理的编号生成处理示例.sql │ │ 5.3.3 使用UPDATE进行编号重排的处理示例.sql │ │ 5.3.3 使用临时表进行编号重排的处理示例.sql │ │ 5.3.3 使用子查询进行编号重排的处理示例.sql │ │ 5.3.3 名次查询的处理示例.sql │ │ 5.4.1 查询已用编号分布情况的示例(临时表法).sql │ │ 5.4.1 查询已用编号分布情况的示例(子查询法).sql │ │ 5.4.2 查询缺号分布情况的示例.sql │ │ 5.4.3 返回已用编号、缺号分布字符串的处理示例.sql │ │ 5.4.4 缺勤天数统计的处理示例.sql │ │ │ └─其他 │ -补位法.sql │ 以另一个表的字段做默认值.sql │ 以另一表的字段生成编号.sql │ 关联部门流水号.sql │ 十六进制.sql │ 学号.sql │ 开票统计--涉及到连号处理.sql │ 新编号查询示例(分类查询).sql │ 新编号查询示例.sql │ 日期流水号.sql │ 材料流水号.sql │ 流水号.sql │ 箱编号连号处理.sql │ 类别自动生成编号示例.sql │ 自已做标识列的例子.sql │ 触发器自动维护已用&未用编号.sql │ 连续编号.sql │ 防止重复的示例.sql │ 项目编号=各项目独立流水号&各年不同.sql │ ├─第06章 │ │ 6.1.1 NULL对IN的查询的影响及解决示例.sql │ │ 6.1.2 各种联接的使用示例.sql │ │ 6.1.2 多表联结导致记录重复的示例.sql │ │ 6.1.3 使用UNION实现库存报表的示例.sql │ │ 6.1.5 按指定上下限区间进行数据统计的示例.sql │ │ 6.1.6 随机出题的示例.sql │ │ 6.2.1 ROLLUP实现的分级汇总示例(定义各汇总列标题).sql │ │ 6.2.1 ROLLUP实现的分级汇总示例(带排序及汇总列标题处理).sql │ │ 6.2.1 ROLLUP实现的分级汇总示例(带排序处理).sql │ │ 6.2.1 ROLLUP实现的分级汇总示例.sql │ │ 6.2.1 UNION ALL实现的分级汇总示例.sql │ │ 6.3.1 简单的交叉报表处理示例.sql │ │ 6.3.2 多列转换为行的交叉报表处理示例.sql │ │ 6.3.3 行值动态变化的交叉报表处理示例(转换多列).sql │ │ 6.3.3 行值动态变化的交叉报表处理示例.sql │ │ 6.3.4 化解字符串不能超过8000的方法.sql │ │ 6.3.5 特殊的交叉报表处理示例.sql │ │ 6.4.1 库存明细帐处理示例(包含结存数).sql │ │ 6.4.1 库存明细帐处理示例.sql │ │ 6.4.2 同期及上期数据对比处理示例.sql │ │ 6.4.3 动态分组处理示例.sql │ │ 6.4.4 排行榜处理示例.sql │ │ │ └─其他 │ 交叉表--复杂名次.sql │ 交叉表-优先级处理.sql │ 交叉表分析.sql │ 分级汇总.sql │ 分组交叉表.sql │ 列转行.sql │ 固定行列报表.sql │ 复杂交叉表.sql │ 复杂交叉表1.sql │ 多栏显示.sql │ 日期+星期+时间.sql │ 格式化报表.sql │ 横转竖-1.sql │ 横转竖-字段名.sql │ 横转竖-生成字段名.sql │ 横转竖.sql │ 行列互换的复杂交叉表.sql │ 限制列数的交叉表.sql │ ├─第07章 │ │ 7.1 splitpage.asp │ │ 7.2.1 TOP n 实现的通用分页存储过程.sql │ │ 7.2.2 字符串缓存实现的通用分页存储过程.sql │ │ 7.2.3 临时表缓存实现的通用分页存储过程.sql │ │ 7.2.4 使用系统存储过程实现的通用分页存储过程.sql │ │ 7.3.1 实现随机分页的通用分页存储过程.sql │ │ 7.3.2 根据分类表实现的分页存储过程.sql │ │ │ └─其他 │ sp_cursor.sql │ 基本方法.sql │ ├─第08章 │ │ 8.1.2 树形数据分级汇总示例.sql │ │ 8.1.3 树形数据编号重排的通用存储过程.sql │ │ 8.1.3 树形数据编号重排示例.sql │ │ 8.1.4 实现编码规则调整处理的通用存储过程.sql │ │ 8.1.4 生成编码规则调整处理T-SQL语句的函数.sql │ │ 8.1.5 删除节点处理的通用存储过程.sql │ │ 8.1.5 移动节点处理的通用存储过程.sql │ │ 8.2.2 树形数据层次显示处理示例.sql │ │ 8.2.2 树形数据广度排序处理示例.sql │ │ 8.2.2 树形数据深度排序处理示例(模拟单编号法).sql │ │ 8.2.2 树形数据深度排序处理示例(递归法).sql │ │ 8.2.3 查找指定节点的所有子节点的示例函数.sql │ │ 8.2.4 查找指定节点的所有父节点的示例函数.sql │ │ 8.2.5 校验插入指定结点是否导致编码循环的示例函数.sql │ │ 8.2.5 校验表中数据是否有循环编码的通用存储过程.sql │ │ 8.2.6 复制指定节点及其所有子节点到指定结点的处理示例(借鉴方式排序法).sql │ │ 8.2.6 复制指定节点及其所有子节点到指定结点的处理示例.sql │ │ 8.2.7 实现删除指定结点及所有子节点的处理触发器.sql │ │ 8.2.8 逐级汇总示例(循环逐级累计法).sql │ │ 8.2.8 逐级汇总示例(用户定义函数法).sql │ │ 8.3.1 产品配件清单查询示例.sql │ │ 8.3.2 最短乘车路线查询示例.sql │ │ │ └─其他 │ xml菜单.sql │ 宝塔形数据的处理-1.sql │ 宝塔形数据的处理.sql │ 树形数据生成xml.sql │ ├─第09章 │ │ 9.1.3 访问外部数据源方法总结.sql │ │ 9.5.1 二进制文件存取示例(T-SQL).sql │ │ 9.5.1 二进制文件存取示例(VB&VBA).vbs │ │ a.txt │ │ Schema.ini │ │ │ └─其他 │ bcp-数据导入导出(全).sql │ bcp-数据导入导出-二进制文件.sql │ bcp-数据导出为文件.sql │ bcp表数据存为XML.sqlSQL Server到Oracle连接服务器的实现.sqlSQL Server到SQLBASE连接服务器的实现.sqlSQL Server到SYBASE连接服务器的实现.sqlsql导出mysql.sql │ textcopy实现文件存取.sql │ Vb程序实现文件存取.sql │ 导入文本文件时如何指定字段类型.sql │ 导出northwind中Employees的图像.sql │ 将某个目录上的Excel表,导入到数据库中.sql │ 数据导入导出基本方法.sql │ 用ASP上传&下载文件.sql
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值