2012-11-16 48 views
3

我確實有問題。我試圖通過OUTPUT參數從存儲過程返回。存儲過程OUTPUT param總是返回NULL

alter procedure dbo.UDP_GET_OUT 
@P_PARAM XML OUTPUT 
WITH EXECUTE AS CALLER 
as 
BEGIN 
SET @P_PARAM = 
(
select 
name,system_type_id 
from sys.types 
FOR XML PATH('Type'),ROOT('ROOT'),ELEMENTS 
) 
/*SELECT @P_PARAM*/ 
END 

然後我調用過程並分配輸出參數。

declare @xml XML 
exec dbo.UDP_GET_OUT @xml 
select @xml 

現在棘手的部分 - 結果總是NULL。有人能指出我做錯了什麼嗎? 謝謝

回答

7

必須在參數傳遞爲OUTPUT:

declare @xml XML; 
exec dbo.UDP_GET_OUT @xml OUTPUT; 
select @xml;