令牌错误=将唯一记录插入SQL Server时的位置

时间:2009-12-03 10:54:58

标签: sql-server

我已经遵循了另一个stackoverflow问题,但我得到了在此行的WHERE处停止的令牌错误的异常:

INSERT INTO Users(nick, place, sex) 
VALUES(@nick, @place, @sex) 
WHERE NOT EXISTS (SELECT nick FROM Users WHERE nick=@nick)
用户中的

缺口是唯一的,我无法在那里插入。

1 个答案:

答案 0 :(得分:2)

如果您使用的是VALUES,则不能有where子句。

您可以改为:

INSERT INTO Users (nick,place,sex)
SELECT @nick,@place,@sex
WHERE NOT EXISTS (SELECT * FROM Users WHERE nick=@nick)