创建作业的通用存储过程

原创 2004年07月29日 11:46:00

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[p_JobSet]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[p_JobSet]
GO

/*--定时调用存储过程

 创建一个在指定时间,调用指定存储过程的作业
 作业执行完成后会自动删除

--邹建 2004.07(引用请保留此信息)--*/

/*--调用示例

 exec p_JobSet 'master.dbo.xp_cmdshell','2004-1-1 10:30'
--*/
create proc p_JobSet
@prorcname sysname, --要调用定时调用的存储过程名,如果不在当前库中,则用:库名.所有者名.存储过程名
@job_date datetime --存储过程的执行时间(包括时间信息)
as
declare @dbname sysname,@jobname sysname
 ,@date int,@time int

select @jobname='定时发送作业_'+cast(newid() as varchar(36))
 ,@date=convert(varchar,@job_date,112)
 ,@time=replace(convert(varchar,@job_date,108),':','')

if exists(select 1 from msdb..sysjobs where name=@jobname)
 exec msdb..sp_delete_job @job_name=@jobname

--创建作业
exec msdb..sp_add_job @job_name=@jobname,@delete_level=1

--创建作业步骤
declare @sql varchar(800)
select @sql='exec '+@prorcname
 ,@dbname=db_name()

exec msdb..sp_add_jobstep @job_name=@jobname,
 @step_name = '发送处理步骤',
 @subsystem = 'TSQL',
 @database_name=@dbname,
 @command = @sql,
 @retry_attempts = 5,   --重试次数
 @retry_interval = 5    --重试间隔

--创建调度
EXEC msdb..sp_add_jobschedule @job_name = @jobname,
 @name = '时间安排',
 @enabled = 1,
 @freq_type = 1,
 @active_start_date = @date,
 @active_start_time = @time

-- 添加目标服务器
EXEC msdb.dbo.sp_add_jobserver
 @job_name = @jobname ,
 @server_name = N'(local)'
go

Oracle实现创建作业定时执行存储过程

Oracle实现创建作业定时执行存储过程:    1,创建表tb_test用来插入存储过程执行时产生的数据。          create table tb_test (date_tim...
  • guofeihu627
  • guofeihu627
  • 2014-11-21 10:35:51
  • 508

创建作业的通用存储过程

if exists (select * from dbo.sysobjects where id = object_id(N[dbo].[p_JobSet]) and OBJECTPROPERTY(i...
  • zhaowei001
  • zhaowei001
  • 2008-01-03 15:24:00
  • 116

oracle创建定时任务、作业,定时执行存储过程

首先前提是你创建好了存储过程,想要创建人物定时运行该存储过程 创建定时任务,定时的执行存储过程 Oracle 10g之前,可以使用dbms_job来管理定时任务。 10g之后,Ora...
  • HF709363456
  • HF709363456
  • 2017-03-01 16:41:05
  • 381

sqlserver 使用脚本创建作业 (by me)

use master go --定义创建作业 DECLARE @jobid uniqueidentifier, @jobname sysname SET @jobname = N'testIn...
  • u012307002
  • u012307002
  • 2014-02-16 16:20:15
  • 2613

作业中调用存储过程不成功

我在sql server 2000上建立了一个连接oracle 9i的链接服务器存储过程中用到了这个链接服务器,我在查询分析器下执行成功,但在作业中调用存储过程不成功出错提示如下:执行用户: NT A...
  • lee576
  • lee576
  • 2007-11-27 09:30:00
  • 2421

SQL Server创建作业流程

  • 2011年04月22日 00:08
  • 7KB
  • 下载

sql数据库作业,定期执行存储过程

IF EXISTS (        SELECT *        FROM   dbo.sysobjects        WHERE  id = OBJECT_ID(N'[dbo].[Jo...
  • AllCanResolved
  • AllCanResolved
  • 2013-04-15 09:08:25
  • 2039

sql server 脚本创建备份数据库的存储过程及利用前述存储过程自动备份数据库的作业

一、创建备份数据库的存储过程 /****** Object: Procedure [dbo].[SP_BackUp_DataBase_Log] Script Date: 3/10/2017 2:...
  • hejisan
  • hejisan
  • 2017-03-10 15:09:55
  • 657

SQL Server 一个比较通用的分页存储过程

包括了: 分页 和 排序USE [DataBaseName]GOSET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOCreate procedure [dbo]....
  • NRlovestudy
  • NRlovestudy
  • 2015-07-15 11:16:50
  • 628

Oracle 数据库管理与应用系统开发

  • 2010年10月20日 15:08
  • 14.49MB
  • 下载
收藏助手
不良信息举报
您举报文章:创建作业的通用存储过程
举报原因:
原因补充:

(最多只允许输入30个字)