2013-07-09 19 views
-1

我正在使用2008 R2,我想將「Select colname from tablename」的輸出設置爲一個可見的ie。 @resultvar,所以我可以在存儲過程中使用它。如何在存儲過程中將sql查詢的輸出設置爲精確

DECLARE @resultVar nvarchar(50) -- or whatever 
SELECT @resultVar = Colname FROM tablename -- with appropriate filtering 

如果你需要從一個存儲過程中得到了這一點,那麼你需要考慮輸出參數:

回答

1

如果你只在一個單一的價值感興趣,因爲它很簡單:

CREATE procedure MyProcedure 
    @resultVar nvarchar(50) OUTPUT 
AS 
    SELECT @resultVar = Colname FROM tablename -- with appropriate filtering 

如果你使用SQL來運行的程序,然後你可以使用:

EXEC MyProcedure @var OUTPUT 

顯然,如果你使用的是像Entity Framework這樣的框架,那麼你需要使用框架提供的任何東西;但是,這是一個完全獨立的問題。

請注意,如果多個行從表名返回,則只會從第一行獲取值。如果它比這更復雜,請擴展原始問題。

+0

感謝ü的幫助,但問題是@resultvar沒有得到查詢結果。所以幫我我怎麼才能得到結果查詢resultvar – user2485642

+0

我建議擴大問題,然後,與示例數據和你期望@resultvar包含。這樣可以更容易地幫助你得到你想要的答案。 –

+0

我想要設置存儲過程變量=查詢的輸出 – user2485642

0

您可以使用一個簡單的代碼是這樣的:

DECLARE @resultvar AS VARCHAR(64) --or any other type you need 
SELECT @resultvar = ColName FROM TableName WHERE --filter on table 
PRINT @resultvar 
相關問題