第5回 データの更新と削除を覚えよう - MySQL講座
サカイ先生のMySQL講座
Lecutures on PHP
第5回 データの更新と削除を覚えよう (その2)
データの削除 ~ DELETE
では次はデータの削除です。これもまずマニュアルを見てみましょう。
http://dev.mysql.com/doc/refman/5.0/en/delete.html
[WHERE where_condition]
[ORDER BY ...]
[LIMIT row_count]
DELETEの処理自体がそもそも「消したいレコード(の条件)を指定して削除する」だけなのでわかりやすいですが、これも以下の形式を覚えておくとよいでしょう。
DELETE FROM テーブル名
WHERE 条件
いままでの中で一番シンプルですね! でもデータが消えてしまうという点で、これまでの中で一番「怖い」命令とも言えます。実行時には条件を何度も見直すなど、慎重に取り扱いましょう。
では、実際にデータを削除してみましょう。先ほど UPDATE で更新した 2008 年のデータは、まだ登録しない事にしようと決まったので(そう決まったと思ってください)、削除します。先ほどは WHERE 条件に year=2008 を指定しましたが、今回は no カラムの値を用いて指定しましょう。もちろん year 列を指定しても構いません。
まず更新前のデータを見てみると、、、、
mysql> SELECT * FROM kohaku;
+----+------+----------------+------------+--------+
| no | year | aka_tori | shiro_tori | winner |
+----+------+----------------+------------+--------+
| 53 | 2002 | 石川さゆり | 五木ひろし | 紅 |
| 54 | 2003 | 天童よしみ | SMAP | 白 |
| 55 | 2004 | 小林幸子 | 五木ひろし | 紅 |
| 56 | 2005 | 天童よしみ | SMAP | 白 |
| 57 | 2006 | 川中美幸 | 北島三郎 | 白 |
| 58 | 2007 | 石川さゆり | 五木ひろし | 白 |
| 59 | 2008 | たべものがかり | 五島五郎 | NULL |
+----+------+----------------+------------+--------+
7 rows in set (0.06 sec)
※ >の後の SELECT * FROM kohaku; が入力するコマンドです。
削除したいレコードの no カラムの値は 59 であることがわかります。
ではその値を「条件」として指定して、レコードを削除してみましょう。削除後、消えたことを SELECT で確認してみます。
mysql> DELETE FROM kohaku WHERE no=59; Query OK, 1 row affected (0.03 sec) mysql> SELECT * FROM kohaku; +----+------+------------+------------+--------+ | no | year | aka_tori | shiro_tori | winner | +----+------+------------+------------+--------+ | 53 | 2002 | 石川さゆり | 五木ひろし | 紅 | | 54 | 2003 | 天童よしみ | SMAP | 白 | | 55 | 2004 | 小林幸子 | 五木ひろし | 紅 | | 56 | 2005 | 天童よしみ | SMAP | 白 | | 57 | 2006 | 川中美幸 | 北島三郎 | 白 | | 58 | 2007 | 石川さゆり | 五木ひろし | 白 | +----+------+------------+------------+--------+ 6 rows in set (0.00 sec)※ >の後の DELETE FROM kohaku WHERE no=59; と SELECT * FROM kohaku; が入力するコマンドです。
確かに消えましたね。めでたしめでたし。
おわりに
これで、データベース操作の基本中の基本である「登録・変更・削除・参照」の4つの操作について、ひととおり学びました。データベースを使いこなす道はまだまだ遠いですが、ここまでで学んだことはこれからもずっと重要な下地となります。自然に使いこなせるようになっておきたいものですね。
次回は、これからみなさんがシステム開発の現場でデータベースを使いこなしていくために学んでいきたい全体像についてお話をしたいと思います。
- 1
- 2
その他の記事も見る
- 第1回 データベースの世界へ足を踏み入れよう
- 第2回 MySQLをインストールしよう
- 第3回 テーブルとデータ操作のガイドツアー
- 第4回 データの登録と参照を覚えよう
- 第5回 データの更新と削除を覚えよう
- 第6回 この連載で学んだことって!?
- 第7回 ローカル環境を作ろう
- 第8回 データを登録しよう
- 第9回 サンプルテーブルのレイアウトを把握しよう(1)
- 第10回 実践的検索操作を学ぼう(1)
- 第11回 実践的検索操作を学ぼう(2)
- 第12回 実践的検索操作を学ぼう(3)
- 第13回 実践的検索操作を学ぼう(4)
- 第14回 実践的検索操作の総まとめ
- 第15回 更新処理を覚えよう
- 第16回 テーブル定義の変更と応用練習
- 第17回 その他のちょっとしたテクニック
- >>「サカイ先生のMySQL講座」一覧ページに戻る
- サカイ先生
本名:坂井 恵(さかいけい)
有限会社アートライ 代表取締役
日本MySQLユーザ会(MyNA; http://www.mysql.gr.jp/) 副代表
システム開発で一番楽しいのは要件を決めて設計をするフェーズ。ここを楽しむために諸分野の基礎固めが重要だと考えている。
近著に『MySQL辞典』『MySQL徹底入門』(翔泳社) など。





ページのトップへ


kende様のご指摘通り、三項演算子を使用する際には、コードの複雑度などを考慮する必要がありますね。書きやすさと共に可読性も追求したいところですね。