首先,选择所希望的
id使用的输出变量
@Id = ([ID])然后分配该
@Id OUTPUT中值
@Id使用可变
@Id = @IdOUTPUT。另外,您应该使用变量在where子句中传递数据,以避免类似sql的注入问题
[ModulId] =@IdModul(即,您不应像那样将其串联起来
[ModulId] = ' + @IdModul)。试试这个 :
DECLARE @SqlQuery NVARCHAr(MAX)SET @SqlQuery = 'SELECt TOP (1) @Id = ([ID]) FROM ' + @TblZimz + ' WHERe [ModulId] = @IdModul'EXEC SP_EXECUTESQL @SqlQuery, N'@Id INT OUTPUT, @IdModul INT', @IdModul = @IdModul, @Id = @Id OUTPUT
在这里查看详细信息
SP_EXECUTESQL
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)