看板 Soft_Job 關於我們 聯絡資訊
在企業軟體中,雖有刪除功能,但不代表該資料就完全消失。 試想一份公文在經過了一些特殊事件後,為了特殊原因要從系統刪除。 難道這份公文就真的在歷史的洪流中被抹除嗎? 實際上可能會因為其他因素,後來需要拿回這份公文, 或著需要再取回這份被刪除的公文的內容作為脈絡及證據。 這時候這種系統設計就應該使用 marked delete 至於要加上 where isDeleted = true 這個問題,用 hibernate 就能輕鬆解決了。 ※ 引述《howdiun (Howdiun)》之銘言: : 除了方便回復之外 : 這種做法還可以讓用戶端用update的方式同步資料(類似git/svn) : 如果有資料刪除了 : isDelete=true之外 : updateTime也會更新 : 用戶端要更新的時候會用(updateTime>上次更新時間)去抓資料 : 於是下一次使用者更新的時候就會拿到這筆資料 : 並且把這筆資料刪除 : ※ 引述《newkkloo (Min)》之銘言: : : 當提供用戶"刪除"資料這個功能時 : : 我發現公司前輩的做法是在資料表加上IsDelete欄位(預設false) : : 當用戶使用刪除資料時實際上是把IsDelete這個欄位設為true : : 所以並不會實際使用T-SQL下Delete語句來刪除 : : 那當資料在呈現時,只需要把IsDetele != true的資料撈出來顯示就好 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.137.15.215 ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1424110086.A.EFC.html