在SQL Server中成功执行查询时获取字符串值作为输出参数

时间:2018-01-10 05:32:12

标签: sql sql-server stored-procedures

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

ALTER PROCEDURE  [dbo].[UserLogin]

@Mode VARCHAR(20) = '',
@UserLoginName VARCHAR(500) = '',
@UserPassword VARCHAR(50) = '',
@Params VARCHAR(50) OUTPUT

AS
BEGIN
    IF (@mode = 'User_Login')
    BEGIN 
        IF EXISTS (SELECT * FROM UserMst WHERE UserLoginName = @UserLoginName AND UserPassword = @UserPassword)
        BEGIN
            SET @Params = 'Success';
        END
        ELSE
        BEGIN
            SET @Params = 'Failure';
        END
    END

    RETURN;
END

我正在使用存储过程来验证登录凭据。如果凭据有效,则存储过程应将字符串参数作为输出返回成功,如果凭据无效,则存储过程应将字符串参数作为失败返回。

1 个答案:

答案 0 :(得分:0)

最后用这样的选择

替换你的RETURN语句
SELECT Result = @Params

因为RETURN用于函数并从存储过程输出值,所以我们通常使用SELECT语句