gpt4 book ai didi

sql - 存储过程不返回任何内容

转载 作者:行者123 更新时间:2023-12-03 07:04:11 25 4
gpt4 key购买 nike

此存储过程不起作用。它只返回 0 行。我检查了 SQL,当直接解析到数据库时它返回正确的值。可能出了什么问题?

ALTER PROCEDURE dbo.GetSaltOfUser
(
@eMail nvarchar
)

AS
DECLARE @result nvarchar
/* SET NOCOUNT ON */
BEGIN
SELECT @result = salt
FROM UserSet
WHERE eMail = @eMail
RETURN @result
END

最佳答案

 @eMail nvarchar

将传入的电子邮件截断为一个字符。您需要输入长度。例如

  @eMail nvarchar(50)

这应该与UserSet中相关列的数据类型匹配

此外,您是否真的想为此使用返回代码,或者您是否想使用输出参数 - 或者只是一个标量选择?

ALTER PROCEDURE dbo.GetSaltOfUser

(
@eMail nvarchar (50), /*Should match datatype of UserSet.eMail*/
@salt nvarchar (50) OUTPUT /*Should match datatype of UserSet.salt*/
)

AS
BEGIN
SET NOCOUNT ON

SELECT @result = salt
FROM UserSet
WHERE eMail = @eMail
END

并调用它

DECLARE @salt nvarchar(50)
EXECUTE dbo.GetSaltOfUser N'abc@example.com', @salt OUTPUT
SELECT @salt

关于sql - 存储过程不返回任何内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3946751/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com