2015-08-20 98 views
-3

我在sql server中有一個表。當插入記錄表中,有時會插入相同的值複製成兩排,但不能能夠重現無法重現表中插入的重複記錄問題

例子:我的2行表

C1 C2  C3 C4 
157 Job157 158 Illumina Parking Building 1 

158 Job157 158 Illumina Parking Building 1 
+3

那麼,這將是一個好主意,在這裏發表您的查詢,以便其他人可以看看它..否則,沒有人能夠幫助你 – Izzy

+0

提示:標識列 –

+0

感謝阿明,保護小組btnSave_Click1(發件人作爲對象,例如作爲EventArgs的) 如果不String.IsNullOrEmpty(視圖狀態( 「的JobId」))然後 UpdateJobList() UpdateProjectMangement() 否則 InsertJobList() 結束如果 BindTopTab() lblSuccessMsg.Text =「數據庫更新成功「 End Sub –

回答

0

要調試此。

  • 在涵蓋所有列的表上創建一個unique constraint
  • 在調試器
  • 設置調試器打破,當你得到一個異常
  • 當重複,調試器會告訴你什麼代碼洞二號插入運行代碼。
  • 一旦你已經解決了這一問題,可以考慮,如果你想保持唯一約束

如果只是在生產重複,那麼你需要做以上,但所有的例外。

傾斜約primary keys,有人很可能會使第二次插入失敗,因此在您的代碼中顯示問題。

我期望一個頁面正在刷新,或者一個按鈕正在按一次以上,但沒有看到調試器中發生了什麼,這些只是猜測。

+0

非常感謝您的建議。它大約發生在500條記錄中。請幫我儘快找到問題。 –

0

u需要在一些領域來檢查重複的值除了身份列 ,您可能會刷新您添加此數據的頁面。把邏輯來檢查c2列中的重複數據,例如。

if not exists (select 1 from your table where [email protected]"C2's parameter") 
begin 
insert operation 
end 
else 
begin 
raieerror already exists 

end 

希望你得到了我的觀點