●メリット
- 誤ってDBからデータが削除された場合に簡単に復元できる
●デメリット
- 表示時にWHERE句にフラグの確認が必要になる
- 削除処理をUPDATE構文で行う為、非直感的である
- レコードが肥大し続ける為データベースのコストパフォーマンスを損なう恐れがある。
- (一定期間後に削除フラグが付いたデータを削除する時効処理を施せばある程度改善できる)
- DB設計が若干複雑になる
- データに個人情報が含まれる場合は、削除データの保持は問題が発生することもある
デメリットの方が多い。