请问,作业如何传递参数?

iceagebirdxq 2010-02-02 09:34:28
看如下代码: 
--定义参数
declare @sche_id varchar(15)
declare @dept_id varchar(15)
declare @delayDateTime datetime

--参数初始化
set @sche_id = '01'
set @dept_id = '001'
declare @delayDateTime = '2009-03-04 12:30:00'

--截取时间
declare @date varchar(15)
declare @time varchar(15)

set @time = REPLACE(convert(varchar,@delayDateTime,108),':','')

--只能为将来安排日程表
if datediff(dd,@delayDateTime,getdate()) > 0
set @delayDateTime = getdate()

set @date = convert(varchar,@delayDateTime,112)


--开始安排计划
EXEC msdb.dbo.sp_add_job
@job_name = @dept_id

EXEC msdb.dbo.sp_add_jobstep
@job_name = @dept_id,
@step_name = @sche_id,
@subsystem = 'TSQL',
--问题:怎么为存储过程传递参数,例如我想这样做:exec dbo.checkAbsence @dept_id
@command = 'exec dbo.checkAbsence',
@retry_attempts = 5,
@retry_interval = 5

exec msdb.dbo.sp_add_schedule
@schedule_name = @sche_id,
@freq_type = 4,
@freq_interval = 1,
@freq_subday_type = 0,
@active_start_date = @date,
@active_start_time = @time

exec msdb.dbo.sp_attach_schedule
@job_name = @dept_id,
@schedule_name = @sche_id

exec msdb.dbo.sp_add_jobserver
@job_name = @dept_id

end

--执行的存储过程
create proc dbo.checkAbsence
@dept_id
as
--任何操作
go


怎么在计划执行的时候为存储过程传递参数
...全文
135 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
iceagebirdxq 2010-05-24
  • 打赏
  • 举报
回复
非常感谢,大家的帮忙!
--小F-- 2010-02-02
  • 打赏
  • 举报
回复
 输出参数 
declare @num int,
@sqls nvarchar(4000)
set @sqls='select count(*) from tableName'
exec(@sqls)
--如何将exec执行结果放入变量中?

declare @num int,
@sqls nvarchar(4000)
set @sqls='select @a=count(*) from tableName '
exec sp_executesql @sqls,N'@a int output',@num output
select @num
htl258_Tony 2010-02-02
  • 打赏
  • 举报
回复
--执行的存储过程
create proc dbo.checkAbsence
@dept_id
as
--任何操作
go

将这个过程出来的结果定义一个参数: output.
htl258_Tony 2010-02-02
  • 打赏
  • 举报
回复
[Quote=引用楼主 iceagebirdxq 的回复:]
SQL code看如下代码:--定义参数declare@sche_idvarchar(15)declare@dept_idvarchar(15)declare@delayDateTimedatetime--参数初始化set@sche_id='01'set@dept_id='001'declare@delayDateTime='2009-03-04 12:30:00'--截取时间declare@da?-
[/Quote]
写一个可返回值的存储过程 ,将参数output.
Zoezs 2010-02-02
  • 打赏
  • 举报
回复

@command = 'exec dbo.checkAbsence @dept_id',

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧