簡體   English   中英

從DB進行邏輯刪除

[英]Logical delete from DB

我有一個復雜的模式,有許多權限和關系。我想定義一個可以撤消的邏輯刪除操作。 我考慮過為每個表添加'isDeleted'標志,但它似乎對我來說是錯誤的。 我還考慮添加一個類似於原始模式的歸檔模式,並在每個刪除操作上移動數據。這似乎需要大量代碼來編寫“刪除”和“取消刪除”操作(特別是因為我想在刪除casade上模擬邏輯delte)。

最后,我不知道在哪里處理邏輯刪除的事件我正在使用EF所以我可以在代碼中執行它,或者我可以在數據庫中使用刪除觸發器。

我會以優雅的方式表達關於如何實現邏輯刪除的任何建議。 謝謝。

我工作的每家公司都使用邏輯刪除標志並通過代碼進行管理。 添加歸檔架構是一個巨大的開銷,IMO增加的優點(編碼和性能方面)不值得額外的努力。

由於這是一個OLTP數據庫,我沒有使用IsDeleted標志的問題。 如果您擔心性能,我將繼續使用IsDeleted標志並通過批處理將其移動到存檔,而不是在線。

我總是記住一件事,以避免過度設計某些東西 - 這不是一個問題,除非它是一個問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM