SQL Server存储过程:必须声明标量变量

时间:2019-04-27 23:57:36

标签: sql-server stored-procedures

DECLARE @occurrences TABLE (Occurrences int)
BEGIN
    SET @occurrences = (SELECT Occurrences FROM [Data])
END

为什么这不可能执行?我想将存储过程中给定表的所有列读入表,以便以后可以更新另一个表。

这从根本上是错误的吗?

SQL Server引发的确切错误是:

  

必须声明标量变量“ @occurrences”

1 个答案:

答案 0 :(得分:3)

Table变量与scalar变量不同。所以你需要

DECLARE @occurrences TABLE (Occurrences int)
BEGIN
    insert @occurrences 
    SELECT Occurrences FROM [Data]
END