标量变量使用存储过程时sql中的错误

时间:2014-10-11 09:59:39

标签: sql sql-server excel stored-procedures

我有'must declare scalar variable'错误,我理解这是因为我的变量在代码中不存在:

CREATE PROCEDURE SP_POLLS 
    @NAME VARCHAR (30)
AS
BEGIN
   IF @NAME = 'all'
      SELECT 
          NAME, X 
      FROM 
          data 
      WHERE 
          NAME = @NAME
END

EXEC SP_POLLS

但是我很难理解我应该把它放在动态sql中。

此存储过程与ADO中的Excel调用进行网格划分,这阻止我将NAME和x带入Excel单元格。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

由于您已使用@NAME作为输入参数,因此需要在调用过程时提供此参数。 像这样 - EXEC SP_POLLS 'all'

否则你会收到错误。