3
我有一個用php寫的我的寵物項目。我的代碼所做的一件工作是加載一堆csv文件,並將它們寫入到具有自動生成的主鍵和多部分唯一鍵的MySQL表中。我沒有任何控制權和檢查方式是已經處理了一些文件,所以獨特的密鑰來得方便。我將數據插入INSERT IGNORE
表中,當我嘗試插入已存在的數據並且所有工作都很好時,它會靜默失敗。ObjectContext.SaveChanges和重複的主鍵
現在,我試圖在C#4類似的項目中使用LINQ到實體,但是當我嘗試調用的對象ObjectContext.SaveChanges()
方法從已經在表文件,UpdateException
拋出與SqlClient.SqlException
作爲內部異常。一個解決方案是將Ignore Duplicate Keys = Yes
索引,它還挺作品,但
- 在變更服務器上,而不是在客戶端
- OptimisticConcurrencyException被套上更新與現有指數
有輕鬆優雅的方式來用L2E完成那些不涉及數據庫更改的插入?
我建議保存更改之前,你檢查的唯一性的關鍵領域。 – RBZ 2011-10-07 18:32:09