Create table TEMP_USER
(
USERNAME nvarchar(50) ,
ID int,
Phone nvarchar(30)
);
如果temp_user中已存在用户名,则在通过SP插入时应该按1进行。 示例:RAM .Narayan如果有人试图再次插入ram.narayan它应该插入ram.narayan1下次当任何人试图插入ram.narayan它应该插入ram.narayan2 ..如何在MSSQL 2008中这样做
答案 0 :(得分:1)
尝试类似下面的内容(未经测试,但它应该给你一个良好的开端)。它假定变量@username
,@id
和@phone
已经声明或作为参数传递。
DECLARE @curr_uname nvarchar(50) = @username
DECLARE @i INT = 0
WHILE EXISTS (SELECT 1 FROM TEMP_USER WHERE USERNAME = @curr_uname)
BEGIN
SET @i += 1
SET @curr_uname = @username + CAST(@i AS NVARCHAR(7))
END
INSERT INTO TEMP_USER (USERNAME, ID, Phone)
VALUES (@curr_uname, @id, @phone)