如果像这样通过身份验证,我有一个存储过程返回用户令牌
BEGIN
SET FMTONLY OFF --Tricky Part
DECLARE @token uniqueidentifier
DECLARE @user_id as int
SET @user_id = (SELECT UserID FROM Users
WHERE @email = Email AND @password = PasswordKey)
IF @user_id IS NOT NULL
BEGIN
SET @token = NEWID()
UPDATE Users SET Token = @token
WHERE UserID = @user_id
SELECT * FROM Users WHERE UserID = @user_id
END
END
没有SET FMTONLY OFF
它,仅当用户输入正确的基数时才返回令牌,否则会出错
类型的成员“令牌”在数据读取器中没有同名的对应列。
发生。
现在我有另一个存储过程(几乎与这个相同),它返回Product
由我传递给存储过程的 ID 确定的单个存储过程,即使我发送不存在的存储过程它也可以正常工作。在函数导入中,一个存储过程向我显示返回的列,而另一个不显示。为清楚起见,这里有两个图像,它们显示了存储过程和函数导入图像