存储过程

时间:2011-03-07 03:45:32

标签: sql-server stored-procedures

如何在存储过程中键入返回值。它们之间有什么区别。请解释一下。

1 个答案:

答案 0 :(得分: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

祝你好运。