存储过程包含输入和输出参数

pik*_*ikk 3 sql sql-server stored-procedures

我有一个表3列:username,passwordpermission.我试图编写一个存储过程接受@username作为输入参数,然后输出一个参数@permission.我该怎么做呢?

小智 9

可能需要更多,但根据您的问题,这是代码:

CREATE PROCEDURE [dbo].[GetPermission]
    @userName varchar(50),
    @permission int output
AS
BEGIN

    select @permission = PERMISSION from USERS where UserName = @userName

END;
Run Code Online (Sandbox Code Playgroud)

编辑:

另一种选择是创建一个函数,例如:

CREATE FUNCTION [dbo].[GetPermission](@userName [varchar(50)])
RETURNS [int] 
AS 
BEGIN

    declare @permission int

    select @permission = PERMISSION from USERS where UserName = @userName

    return @permission

END;
Run Code Online (Sandbox Code Playgroud)

  • 顺便说一句.如果你(pikk)想要比较密码我建议你存储它们哈希... [链接](http://msdn.microsoft.com/en-us/library/ms174415.aspx) (5认同)