軟體工程師的小事:到底要不要 Close

問與答:不需要的資料列就刪除就好了 | 2019 鐵人賽

論點

資料庫的使用空間是有限的
若資料庫儲存很多不需要的資料會浪費空間

這論點有很明顯的瑕疵
應該要視資料表儲存的資料類型而定
保存紀錄是一件非常重要的事情

在現實中
店員不會因為發票打錯或是你要取消結帳就將你原本的發票全部撕掉
而會回收你的發票做標記後進行封存

情境

電子商務網站擁有的促銷活動功能
不應該設計讓使用者可以將促銷活動設定直接從資料表中刪除

當使用者因為一些原因想要刪除紀錄時
只要資料列還存在於資料庫中,就可以很快速地去找出資料

大部分的情況下
皆不應將資料列直接從資料表中進行刪除
可以透過刪除欄位進行標記

或是將刪除資料搬移到其他地方進行封存
請勿直接刪除資料列的內容

你不會因為為了證明使用者操作錯誤
而去復原指定時間點的資料庫

留言