RailsのO/RマッパーことActiveRecordの削除(delete)は、通常、物理削除の仕様となっています。 これってビジネス利用では結構辛い仕様ですよね? もちろん、そんな人向けに論理削除に切り替えられるようなgemがいくつも存在しています。 その中で、個人的なお勧めはkakurenboというgemです。 ちなみに他の似たようなgemとの比較は、このgemの作者自身がやっているのがお勧めです。 インストール
データベースの論理削除と物理削除 データベースからデータを削除するには、「論理削除」と「物理削除」2種類の方法がありまります。 物理削除とは文字通りDELETE構文を利用しデータベースよりレコードを完全に削除してしまうことをです。 論理削除とは、データベースにフラグとなるフィールドを作成しておき、削除時に削除フラグを立てることにより、仮想的に表示時に見えなくしてしまう処理になります。 私がデータベース設計を行う際には論理削除を採用するのですが、論理削除のメリットデメリットをまとめておきたいと思います。 論理削除のデメリットが、物理削除のメリットになります。 メリット 誤ってDBからデータが削除された場合に簡単に復元できる デメリット 表示時にWHERE句にフラグの確認が必要になる 削除処理をUPDATE構文で行う為、非直感的である レコードが肥大し続ける為データベースのコストパフォーマンス
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く