2013-07-23 101 views
0

雖然我從Sample_User_Bak使用下面的查詢中插入數據Sample_User錯誤從一個表插入到另一個數據

INSERT INTO Sample_User (Sample_UserID, Sample_Username, Sample_Password) 
SELECT Sample_UserID, Sample_Username, Sample_Password 
FROM Sample_User_Bak; 

我收到SQL Server中的以下錯誤消息。

Violation of PRIMARY KEY constraint 'PK_Sample_User'. Cannot insert duplicate key in object 'dbo.Sample_User'.

兩個表都有相同的列名。我只是試圖插入正常程序中的值。我的查詢出了什麼問題?任何幫助都感激不盡。

+1

你有兩個表中檢查數據?。還有一定要在你的主鍵字段之一.. – Appyks

+0

@Appyks相同值的記錄,你是對的。這就是我得到這個錯誤的原因。 –

回答

0

原始數據存在於Sample_User。這就是爲什麼我無法插入Sample_User_Bak的新值。

所以,我先刪除了Sample_User的值。

DELETE * FROM Sample_User

,然後執行上述INSERT查詢。

1

如果您因爲其他限制而無法刪除現有數據,您可以執行此類操作。

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) 
相關問題