【发布时间】:2016-05-25 01:46:27
【问题描述】:
无法在具有唯一索引的对象中插入重复的键行
我正在尝试将我的用户转移到由 asp.net 身份创建的新数据库。但我得到这个错误:
无法在对象“dbo.AspNetUsers”中插入重复的键行 唯一索引“用户名索引”。
我的代码是:
INSERT INTO [dbo].[AspNetUsers]
(
[Id],
[UserName],
[UserNameRus],
[UserNameHeb],
[UserNameEng],
[Email],
[EmailConfirmed],
[PhoneNumberConfirmed],
[TwoFactorEnabled],
[LockoutEnabled],
[AccessFailedCount],
[Lang],
[isSendCommercial]
)
SELECT
NEWID(),
[UserName],
[UserNameRus],
[UserNameHeb],
[UserName],
[Email],
'false',
'false',
'false',
'true',
'0',
[Lang],
[isSendCommercial]
FROM [dbo].[Pj_Users]
有人可以向我解释一下,为什么会出现此错误以及如何解决?谢谢。
【问题讨论】:
-
你能确认RDBMS吗?我假设它是 MS SQL Server。查看表“dbo.AspNetUsers”上的唯一索引“UserNameIndex”。您可能会发现它包含“用户名”列,并且表“dbo.Pj_Users”有两行具有相同的“用户名”。
-
谢谢!这帮助很大!
标签: sql database asp.net-identity