2017-10-12 87 views
0

我必須準備一個邏輯,其中在表中有兩種類型的記錄列。比較非關鍵字段並檢測更新記錄

  • 一個標識的唯一記錄是指重點領域
  • 那些非關鍵領域

如果關鍵領域正在發生變化,然後我要更新與刪除記錄/添加操作。而如果非關鍵字段正在更新,我必須使用Change操作符。

我在使用比較器的對象列表中獲取記錄我能夠檢測到關鍵字段的變化並使用添加/刪除操作符。

比較器邏輯比較舊& &中的關鍵字段與新的關鍵字段(如果有更改)刪除操作員舊記錄和添加新記錄添加。這是直的。

但是對於更改運算符什麼是知道哪個字段更新的最佳方法?相應的「更改」將被添加。使用比較器我可以驗證一些事情是否發生了變化,但是怎麼改變了如何使用比較器或其他東西呢?

正如下面記錄ID例如,開放日期和狀態都在那裏爲其餘都是非關鍵領域

ID,開放日期,結束日期,狀態,EST結束日期

重點領域

我可以比較非關鍵比較的完整記錄,以知道是否有更改,但是我不知道更改了什麼,因爲我必須使用更新操作符而不是刪除/添加更新相同的現有記錄。

我會先運行添加/刪除比較檢查,然後驗證非關鍵字段的更改。請指導

更新:我想我回答我自己的問題,首先我會做重點野外對比的記錄來生成添加/刪除記錄在重點領域相結合的更新的基礎上再對相同的記錄,我會做如果檢測到更改,則完成關鍵比較更新操作員將被添加並且不會生成插入/刪除。我不需要檢測哪個確切的非關鍵字段發生了變化。

謝謝。

+0

您是否試圖檢測對象中的更改,或者您是否存儲重複項並使用比較器比較它們?另外,您是否可以包含您的部分代碼 – jrtapsell

+0

我試圖比較並檢測以前的記錄與新記錄是否有任何變化。我想我得到了答案。感謝您考慮和閱讀。 –

回答

0

我想我回答了我自己的問題,首先我會做關鍵字段比較的記錄和相同的記錄我會做完整的關鍵比較,如果檢測到更改更新操作將被添加並且不會生成插入/刪除。我不需要檢測哪個確切的非關鍵字段發生了變化。

謝謝你看我的問題和你的時間。