2011-03-07 136 views
0

如何在存儲過程中返回值的類型。他們之間有什麼區別。請解釋我。存儲過程

+0

退房http://sqlserverpedia.com/wiki/Stored_Procedures_-_Output_Parameters_%26_Return_Values - 這列出了用實例 – InSane 2011-03-07 03:54:03

+0

請解釋一下你的意思遠一點返回值的不同選項,林不知道你真的很詢問 – Gent 2011-03-07 03:54:22

+0

第一所有:它們被稱爲「存儲* D *過程」 - 如「存儲在SQL Server中」(而不是「存儲過程」) – 2011-03-07 05:36:44

回答

4

通常在存儲過程中,您希望獲取數據集。如果您正在尋找一種方法從某種類型的查詢中獲取單個值,那麼您可能更適合製作UDF(用戶定義的函數)。

儘管如此,這裏是你如何創建一個輸出變量

CREATE PROCEDURE dbo.GetNameByID (
    @ID NVARCHAR(50), 
    @PersonName NVARCHAR(50) OUTPUT) 
AS 
SELECT @PersonName = LastName 
FROM Person.Contact 
WHERE ID = @ID 

這個程序的存儲過程,然後你可以如下執行它。

DECLARE @Name NVARCHAR(50) 

EXEC dbo.GetNameByID 
    @ID = 'A123FB', 
    @PersonName = @Name OUTPUT 

SELECT Name = @Name 

祝你好運。