hrgrweblog

だらだらとITを語るブログ「ヒロガルウェブログ」(旧hrgrweb.comブログ)

【データベース】論理削除とは?

こちらの記事は、以前「どっかの誰かさんの独り言」で公開されていた記事を移動させたものです。

データベースにおける「論理削除」は、誤ってデータを削除してしまっても簡単に復元できるようにするための方法です。

データベースのテーブルに「books」というものがあったとしましょう。このテーブルには、本のタイトル、著者名、概要、登録日などが登録できるとしましょう。

「論理削除」の対義語は「物理削除」で、こちらは 直接 DELETE 文を用いて削除します。この方法で削除してしまうと復元が難しくなってしまいます。

そこで「論理削除」を使います。こちらは、テーブルに新たに、削除されたかどうかを示すフラグを入れることができるカラムを用意し、削除されていない場合は、「1」を、削除された場合は「0」のような値を入れておきます。こうすれば、ユーザーには、削除された本は表示されないけれど、データを残すことができます。

また、一定期間経ったら「論理削除」されたデータを「物理削除」するには、フラグではなく、「削除した日時」を入れておき、一定期間経ったら削除するプログラムを組んでおけばいいわけです。

広告を非表示にする