2017-06-30 178 views
0

我正在處理SQL Server 2005數據庫,並試圖將表變量從一個存儲過程傳遞到另一個存儲過程。下面是表格的結構和我的嘗試。從一個存儲過程傳遞表變量到另一個

@MyTable

EmployeeID FirstName LastName 
1    Dummy  Last 
2    Some   Name 

我試圖表轉換爲XML,並傳遞XML作爲參數的新的SP。

SELECT * FROM @MyTable FOR XML AUTO 

結果

<_x0040_MyTable EmployeeID="1" FirstName="Dummy" LastName="Last" /> 
<_x0040_MyTable EmployeeID="2" FirstName="Some" LastName="Name" /> 

但是從這個XML到錶轉換回已經變得太複雜,我的SQL知識水平。我在正確的道路上嗎?有沒有簡單的方法?

注 - 我已經看過一些建議使用#temp表的帖子,我不喜歡使用該解決方案。我想使用@MyTable參數。

回答

0

Erland Sommarskog是你的朋友在這裏。以下鏈接提供了一個顯示選項的表格。對於SQL Server 2005,TVF不是一種選擇。您可能需要使用XML或臨時表來共享數據。我知道你說這兩個是你最不可取的選擇,但對於2005年,我認爲他們是最合適的。

http://www.sommarskog.se/share_data.html

相關問題