【发布时间】:2016-12-08 21:43:17
【问题描述】:
我有一个用户输入进入数据库以与表的列进行比较。我在比较另一列的列上发现了大量信息,但似乎无法正常工作。
这是我的代码:
CREATE Procedure Check_Previous_Passwords
@ua_pk uniqueidentifier,
@IncomingPassword varchar(25)
AS
DECLARE @TempTable TABLE (Passwords varchar(25))
INSERT INTO @TempTable
SELECT *
FROM User_Passwords
WHERE ua_fk = @ua_pk
IF @IncomingPassword = @TempTable.Passwords
--Then do stuff
GO
我很确定这是我完全忽略的事情。谢谢!
【问题讨论】:
-
如果它们相同或不同,你想做什么?
-
如果它们相同,我必须创建一个错误,说明它们需要不同的密码。如果不同,则继续下一个函数
-
但我在使用 TempTable 的 IF 语句中抛出错误
-
您正在尝试将 varchar 与整个 varchar 表进行比较。您可能想要类似 IF EXISTS (SELECT Passwords FROM @TempTable WHERE Passwords = @IncomingPassword)
-
啊啊啊!明白了!非常感谢
标签: sql sql-server stored-procedures comparison