[英]return multiple data from stored procedure from the same table
這是存儲過程:
CREATE PROCEDURE [dbo].[sp_Login]
@Email nvarchar(50),
@Password nvarchar(50),
@UserId uniqueidentifier output,
@UserType int output,
@IsVerify bit output,
@IsPremium bit output
AS
BEGIN
SELECT @UserId = UserId FROM Users WHERE Email = @Email AND [Password] = @Password
SELECT @IsVerify = IsVerify FROM Users WHERE Email = @Email AND [Password] = @Password
SELECT @UserType = UserType FROM Users WHERE Email = @Email AND [Password] = @Password
SELECT @IsPremium = IsPremium FROM Users WHERE Email = @Email AND [Password] = @Password
END
我的問題是:有辦法將這些參數作為“輸出”返回,而不需要調用相同的“選擇”功能4次。
您應該對所有參數使用一個選擇,如下所示:
CREATE PROCEDURE [dbo].[sp_Login]
@Email nvarchar(50),
@Password nvarchar(50),
@UserId uniqueidentifier output,
@UserType int output,
@IsVerify bit output,
@IsPremium bit output
AS
BEGIN
SELECT @UserId = UserId,
@IsVerify = IsVerify,
@UserType = UserType,
@IsPremium = IsPremium
FROM Users
WHERE Email = @Email
AND [Password] = @Password
END
你可以使用單一選擇語句
SELECT @UserId = UserId ,
@IsVerify = IsVerify ,
@UserType = UserType ,
@IsPremium = IsPremium
FROM Users WHERE Email = @Email AND Password = @Password
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.