【发布时间】:2012-01-29 06:46:55
【问题描述】:
我有一个用户表,其中包含用户 ID(主键)、用户名、密码
有一个以 XML 形式接受用户列表的存储过程。我的要求是将用户插入用户表,但在插入之前我需要检查用户名是否已经存在。如果存在,则应在用户名后面附加一个随机数。
我如何检查用户名是否已经存在并随机化,下面是盲目插入用户名的sql。有什么帮助吗?
XML 结构:<ROOT><User UserId="0" Username="ajohn" Password="548788844" ></ROOT>
SQL:
INSERT INTO [User] (Username, Password)
SELECT tab.col.value('@Username','nVarchar(max)') AS Username, tab.col.value('@Password','nVarchar(max)') AS Password,
FROM @pupilDetails.nodes('ROOT/User') tab(col)
【问题讨论】:
-
您可以附加
UserID而不是生成随机数。由于UserID是PK,因此保证不会与其他用户名冲突。
标签: sql-server-2005