Sql server 将数据从一个表插入另一个表时出错
当我使用以下查询将数据从Sql server 将数据从一个表插入另一个表时出错,sql-server,insert,duplicates,constraints,primary-key,Sql Server,Insert,Duplicates,Constraints,Primary Key,当我使用以下查询将数据从Sample\u User\u Bak插入到Sample\u User时: INSERT INTO Sample_User (Sample_UserID, Sample_Username, Sample_Password) SELECT Sample_UserID, Sample_Username, Sample_Password FROM Sample_User_Bak; 我在SQL Server中收到以下错误消息 违反主键约束“PK\u Sample\u User
Sample\u User\u Bak
插入到Sample\u User
时:
INSERT INTO Sample_User (Sample_UserID, Sample_Username, Sample_Password)
SELECT Sample_UserID, Sample_Username, Sample_Password
FROM Sample_User_Bak;
我在SQL Server中收到以下错误消息
违反主键约束“PK\u Sample\u User”。无法在对象“dbo.Sample\u User”中插入重复的密钥。
两个表具有相同的列名。我只是想在正常过程中插入这些值。我的问题出了什么问题?任何帮助都将不胜感激。原始数据存在于
Sample\u User
中。这就是为什么我不能从Sample\u User\u Bak
插入新值的原因
因此,我首先从Sample_User中删除了这些值
DELETE*FROM Sample\u User
然后执行上述
插入查询。如果遇到由于其他限制而无法删除现有数据的情况,可以执行类似操作
INSERT INTO Sample_User
(Sample_UserID, Sample_Username, Sample_Password)
SELECT Sample_UserID, Sample_Username, Sample_Password
FROM Sample_User_Bak
WHERE Sample_User_Bak.Sample_UserID not in
(SELECT Sample_UserID FROM Sample_User)
您检查了两个表中的数据了吗?。其中一个主键字段中必须有值相同的记录。@Appyks,您是对的。这就是为什么我会犯这样的错误。