データベースのデータを削除するDELETE文(SQL)の基礎と構成

データベースに既に登録されたデータを削除するにはSQLのDELETE文を使います。

SELECT同様に更新対象データを絞り込んで対象データを削除するので、SELECT文をちゃんと勉強していればDELETE文は簡単です。

更にUPDATEやINSERTのようにカラムを指定することも無いです。

削除はデータを1行まるごと削除するだけなので。

SELECT文は「データベースからデータを取得するSELECT文(SQL)の基礎と構成」をどうぞ。

DELETE文の基本構成

DELETE FROM テーブル名 WHERE 条件式;

青い部分はデータを更新するDELETE文の構文です。

 

テーブル名には削除するデータのテーブル名を指定します。

 

WHERE は省略も出来ますが、省略すると全てのデータが削除されます。

条件を複数指定する場合は AND や OR を使って指定します。

詳細はSELECT文で解説していますのでそちらをご覧ください。

DELETE文のサンプルコード

例えば以下のテーブルがあるとします。(テーブルの作り方はこちら

ユーザーテーブル(user)

ID ユーザー名前
1 田中
2 鈴木
3 山田
4 鈴木

この id が 3 の山田さんが退会してデータを削除することになったとします。

上のコードを実行すると山田さんのデータは削除されます。

 

ただし、データの削除は基本的に行わないです。

もし間違って削除してしまった場合はバックアップから復元するしか出来ないです。

例えば5年前のログなど、データが完全に不要の場合は削除も良いですが、基本的には「ステータス」というカラムを持ちステータスを削除状態にする論理削除を使います。

それこそ大企業のシステムで、データが数百万件あるようなものなら古いデータを削除することもありますが、個人で受注するレベルのものならほぼ削除は不要です。

まとめ

データベースに登録されているデータを削除するにはDELETE文を使う。

DELETE文はSELECT文をしっかり勉強していれば難しくはない。

だけど基本的にはDELETEで物理削除しないでステータスを削除状態にするだけの論理削除を使う。

コロナの影響でみんな大変だから俺もなんかできること

僕は福井県に住んでいるのですが、戦時中に福井大空襲にあい、その直後に大震災にあってボロボロになった話をおばあちゃんに聞きました。

それでも復活することができ、不死鳥の町と言われるようになりました。

先人達には心から感謝し尊敬します。

リーマンショック、東日本大震災、コロナと数十年に一度と言われる被害が立て続けに起きていますが、僕たちは強いです。

今は苦しいかもしれませんがきっと復活できます。

僕は低学歴ですし小さな小さな粒でしかないですが、プログラミングに関しては必死に勉強し15年以上ごはんにありつけています。

プログラミングを勉強している人の役に立てるほどのスキルはあると思っています。

なので1人でもんもんと悩んでいる若手のエンジニア向けに質問を受け付けることにします。

自宅で待機されている間もパソコンとインターネットがあればプログラミングの勉強はできます。

  • PHP
  • SQL
  • HTML・CSS
  • jQuery

とは言ってもいきなり答えを聞いていたのではなかなか成長できないと思うのです。

なので質問の際には次のことをご連携ください。

  • 何をやりたいか
  • どんなことを調べたか、検索キーワードと参考にしたページのURL
  • 調べた結果どこが分からないか
  • できるなら試したコード

メッセージいはとりあえずTwitterにでもください。

質問はこちら

すぐに返事できないかもしれませんがご了承ください。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA