重要なポイント

!!危険!!削除する場合には、必ず先に条件を設定してから!!

説明

delete文は、レコードを削除するための構文です。

delete from [テーブル名];
  • where句が無くても、delete文は動作しますが、どのレコードを削除するか条件を必ず付けましょう。万が一、間違えて全データを削除してしまった場合、元には戻せません。
  • fromは、データベースによって必要な場合と不要な場合があります。
  • 別名は不要です。

構文

delete from

delete from [テーブル名] 
 where [カラム名] = [条件];

<例題>

「stundent_mst」テーブルのレコードを削除すること。

  • 抽出条件
    • 学生NO(student_no)が〈1000〉
delete from student_mst 
 where student_no = 1000;

注意点

すべてのレコードを削除したい場合には、条件「where」を無くします。但し、何度も言いますが、この作業は大変危険です。できるだけ条件を付けるようにしてください。

delete from student_mst;

物理削除と論理削除

データベースを扱っていくと、「削除の考え方」として2つあります。

  • 物理削除
    delete文などを使用し、テーブルからレコードを物理的に削除することです。この削除の場合、完全に削除されてしまうため、後日、どのようなデータが入っていたかなどを調べることは不可能です。
  • 論理削除
    特定のカラムを利用し、削除されていると「みなす」ことです。delete文のように実際には削除しないのが特徴です。今回のテーブル構造の場合は、削除区分(delete_ku)が「〈0〉の場合は、正常データ」「〈1〉の場合は、削除済みデータ」というルールになっています。