我今天早上已经看了很多次,但找不到问题。它可能非常简单,当有人指出时我会觉得自己像个白痴。这个 SQL 会失败什么?
-- Get CurrentRowCount
DECLARE @MaxID INT
SELECT @MaxID = ISNULL(MAX(WorkTypeID),0)
FROM caWorkType
ALTER TABLE #WorkType ADD _RowID INT NOT NULL IDENTITY(@MaxID,1)
我得到的错误是:“'@MaxID' 附近的语法不正确”我已经检查过,@MaxID 被 select 语句设置为 45。临时表 #WorkType 也没有名为“_RowID”的列
最佳答案
这不是尝试将列添加到失败的临时表的行为,但您不能使用变量来指定 IDENTITY
的值:
不正常 :
ALTER TABLE #WorkType ADD _RowID INT NOT NULL IDENTITY(@MaxID,1)
好的 :
ALTER TABLE #WorkType ADD _RowID INT NOT NULL IDENTITY(55,1)
马克
关于tsql - 尝试向临时表添加列失败,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1817969/