首次發帖,請讓我知道這個問題是否已經回答!我試着四處尋找,但找不到任何東西。修改存儲過程中的表格
在我的存儲過程中,我選擇了一個臨時表,而我做了一些修改(我已經把它歸結爲基本問題)。
SELECT 'a' AS ColA, 'b' AS ColB INTO #tmp
ALTER TABLE #tmp
ADD ColC char(5) NULL,
ColD char(5) NULL,
ColE char(5) NULL
UPDATE #tmp
SET ColC = 'c',
ColD = 'd',
ColE = 'e'
FROM #tmp
SELECT * FROM #tmp
在查詢分析器,如果選中&分開運行,才能,我得到所需的輸出。
ColA ColB ColC ColD ColE
---- ---- ----- ----- -----
a b c d e
然而,當我運行它們放在一起,我得到以下錯誤:
(1 row(s) affected)
Msg 207, Level 16, State 1, Line 10
Invalid column name 'colC'.
它看起來像ALTER TABLE語句是被略過了?我在每條命令後插入了GO語句,代碼在查詢分析器中工作。但是,我無法弄清楚如何在存儲過程中複製它。 (對於s-procs是否有「GO」等效物?)
任何幫助非常感謝!
我跑它針對SQl 2005並獲得了期望的輸出而沒有任何錯誤。 – Chandu 2011-04-04 21:29:01
@Cybernate - 我也是! – 2011-04-04 21:29:47
忘記了,Im在SQL 2000上遇到這個問題:( – TheNoodle 2011-04-04 21:30:51