2016-02-26 291 views
0

通常的任務 - 用戶註冊。 但是用戶和他們的個人數據刪除呢?我是否應該刪除行(從所有相關的表)或只是更新列「刪除」例如,然後總是使用額外的「where deleted = false」子句?只刪除或只更新或更新+刪除mysql

請根據速度爲您的答案,如果可能的話進行優化。

P.S.我不需要保存這些數據。而且,如果總是「更新」並且例如每週一次「刪除所有更新」行是比總是更新更好的解決方案?

回答

0

您尚未表達您是否有理由保留有關已刪除用戶的信息。如果你需要保留它,答案是顯而易見的;如果你不這樣做,那就刪除它(除了使用比需要更多的空間外,不需要的行會減慢查詢的速度)。

0

刪除

  • 你的數據庫有更少的冗餘數據
  • 你的查詢都是清潔
  • 相關數據可能需要被移除

標誌

  • 您保持用戶的審計
  • 相關數據可以留在原地
  • 您的查詢與WHERE userId = 123

通知書散落我沒有列出任何作爲CON。這取決於你自己決定。

0

我想你回答了你自己的問題。我不知道這個數據庫是否爲個人使用,但在我看來是一直保留一段時間不需要的數據。我建議將一個標誌設置爲1等數字值,並且每週都有一個工作從適當的表中刪除所有這些記錄。