我一直在SQL Management Server上使用Job Activity Monitor来检查失败的作业的历史记录。该消息告诉我:
必须声明标量变量@i。
问题是我正在处理的文件是一个存储过程,并且我已经在开始时正确地声明了变量。
我的问题是:
有没有办法找到使用“作业活动”监视器导致问题的确切行?
这是它在存储过程中使用的方式:
declare @i nvarchar(50), @j nvarchar
.
.
.
.
.
.
(Then used in a cursor like this)
set @i = 0
EXEC sp_executesql
@statement = @sql,
@parameters = N'@i(50) nvarchar OUTPUT',
@i = @i OUTPUT
IF @i >0
.
.
答案 0 :(得分:1)
您必须按以下格式定义sp_executesql的@Parameters:
@parameters = N'@i nvarchar(50) OUTPUT'