我有嵌套的存儲過程,我需要在子進程中創建一個LOCAL TEMP TABLE並能夠在父進程中使用它。在父進程中的子進程中聲明的訪問#TempTable
EX:
父程序:
EXEC ChildProcedure
SELECT * FROM #TempTable
子過程:
CREATE TABLE #TempTable (Field1 VARCHAR(1000),Field2 VARCHAR(1000))
INSERT INTO #TempTable (Field1,Field2) VALUES ('1','2')
當我嘗試這個,SQL說:
無效的對象名稱#TempTable '
有沒有什麼辦法可以在沒有GLOBAL TEMP TABLES的情況下實現這一點?
看起來你想在存儲過程之間共享信息。 Erland Sommarskog在這個主題上有一個很好的博客:http://www.sommarskog.se/share_data.html。 –
子程序*是否*是*創建表的那個?讓父母創建它並讓孩子填充它實現起來微不足道。反過來說,[自](https://msdn.microsoft.com/en-us/library/ms174979.aspx):「在存儲過程中創建的本地臨時表將在存儲時自動刪除程序完成「 –
@Damien_The_Unbeliever是的,我也達成你的意見,但我想知道是否有另一種方式來做到這一點。謝謝。 –