摘要:什么是軟刪除軟刪除又叫邏輯刪除,標記刪除,與我們常說的刪除不同,并不是真的從數據庫中將這條記錄去除,而是會設置一個字段,比如來標記刪除狀態。與硬刪除的比較雖然軟刪除比較好,它能保證數據的完整性,但并不表示我們任何時候都要使用軟刪除。
上次在處理項目中的一個異常的時候,定位到異常的位置是刪除時候拋出的異常,然后最后的解決辦法是使用@NotFound注解實現的。然后老師說這是一種軟刪除。當時只是大概知道什么意思,但是并不清楚到底是什么東西。今天簡單學習了下。
什么是軟刪除軟刪除又叫邏輯刪除,標記刪除,與我們常說的刪除不同,并不是真的從數據庫中將這條記錄去除,而是會設置一個字段,比如:isDelete來標記刪除狀態。
那就會產生下一個問題,為什么要有軟刪除呢?為什么不直接刪除呢?
為什么會有軟刪除在現實情況中,很多時候我們說的刪除并不是真的是刪除的本意,因為站在用戶的角度來看,并不是一種刪除的狀態:
訂單不是被刪除的,是被“取消”的。
員工不是被刪除的,是被“解雇”的(也可能是退休了)。
職位不是被刪除的,是被“填補”的(或者招聘申請被撤回)。
所以這些時候,我們并不能真的把記錄刪除,所以軟刪除就出現了。
當然,我們更希望用一下代表狀態的詞來代替isDelete,就比如我們項目中已經使用的:有效、停用、棄用等等。
與硬刪除的比較雖然軟刪除比較好,它能保證數據的完整性,但并不表示我們任何時候都要使用軟刪除。當我們確定某些數據真的不需要的時候,硬刪除就成了必須。比如驗證碼。這種數據刪除后就沒有必要保存了。
總結項目中的問題,本來的邏輯是清空原始數據,然后重新計算,再存入數據庫中,所以這時使用了刪除,數據庫中就不應該存在那些數據,所以確實不應該使用軟刪除,還是應該使用常說的硬刪除。
友情鏈接:http://xingaiming.com/2015/12/db_design_dont_delete_data/
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/76776.html
摘要:簡單來說就是引用和引用隊列關聯起來引用的構造函數傳入隊列,然后引用被回收的時候會被添加到隊列中,然后使用方法可以返回引用。 引語: ????我們知道java相比C,C++中沒有令人頭痛的指針,但是卻有和指針作用相似的引用對象(Reference),就是常說的引用,比如,Object obj = new Object();這個obj就是引用,它指向的是真正的對象Object的地址,不過今...
摘要:所以我十分建議大家去讀一下圖解和權威指南。圖解這本書對互聯網基盤協議進行了全面系統的介紹。通過書中大量生動形象的通信圖例,我們能夠更全面地理解通信過程中客戶端與服務器之間的交互情況。返回結果的狀態在通訊中,通過轉態碼,告知客戶端的請求狀態。 前言 作為一個前端,如果能夠深刻理解 HTTP 通信,能夠讓我們在日常開發工作中快速定位問題。所以我十分建議大家去讀一下《圖解HTTP》和《HTT...
閱讀 3187·2021-11-23 09:51
閱讀 1524·2021-11-22 09:34
閱讀 2836·2021-10-27 14:15
閱讀 2266·2021-10-12 10:17
閱讀 1884·2021-10-12 10:12
閱讀 946·2021-09-27 14:00
閱讀 1996·2021-09-22 15:19
閱讀 1032·2019-08-30 10:51