2012-11-06 74 views
0

我正在用SQL Server構建ASP.NET MVC應用程序。我想知道什麼是記錄刪除操作的良好做法。我的意思是,當通過網絡應用程序刪除某個項目時,我想將其標記爲已刪除,然後從管理控制檯中,我會在需要時清除它們。我應該添加一個像MarkedAsDeleted字段到我的表嗎?

這是一個很好的做法嗎?我應該使用還是避免?

謝謝。

+0

或者您可以在其中一個字段中填寫無效值以節省空間。如果該字段具有無效值,UI可以將該記錄顯示爲無效。例如,年齡= -1 – aakash

回答

0

如果您對存儲空間沒有任何問題,則此方法沒有任何問題。通常,如果要刪除的對象綁定到其他對象(例如,如果您通過用戶標識跟蹤更改,那麼您將不想刪除該用戶,因爲您無法爲該用戶提供信息用戶稍後)。只需標記顯示記錄已被刪除的位域並在查詢時將其過濾掉。

再說一次,它確實取決於您和您的應用程序的意義。你會再次需要這個對象嗎?它與數據庫中的其他項目綁定嗎?你想給用戶提供'取消刪除'的選項嗎?如果對這些問題的答案是肯定的,那麼你應該保留記錄。如果對所有這些問題的答案都是否定的,那麼我會問,爲什麼不在要求時刪除記錄?

相關問題