重要なポイント
説明
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〉の場合は、削除済みデータ」というルールになっています。