前章の記事(SQLを学ぼう!【2章】)では、MySQLに接続し、挿入したデータを検索して表示させる作業を行なっていきました。今回は挿入したデータを更新する方法とデータを削除する方法について行なっていきたいと思います!
前章をご覧になりたい方は下記のリンクからご参照ください。
・SQLを学ぼう!【1章】
・SQLを学ぼう!【2章】
##データを更新する
前章(SQLを学ぼう!【2章】)で作成したデータを今一度、確認しておきます。
mysql> select * from list;
+------+---------------+---------------------------+-------+
| id | name | address | age |
+------+---------------+---------------------------+-------+
| 1 | 学 太郎 | 東京都世田谷区 |23 |
| 2 | 中村 二郎 | 愛知県稲沢市 |30 |
| 3 | 山科 三郎 | 千葉県千葉市 |27 |
| 4 | 鈴木 一郎 | 福岡県飯塚市 |35 |
| 5 | 中山 五郎 | 山梨県山梨市 |20 |
| 6 | 小林 大介 | 東京都千代田区 |40 |
| 7 | 大場 芳樹 | 東京都港区 |26 |
| 8 | 中川 博之 | 滋賀県彦根市 |31 |
| 9 | 宮崎 遥輝 | 東京都八王子市 |29 |
| 10 | 青木 正太郎 | 東京都町田市 |47 |
| 11 | 佐藤 美穂 | 福島県白河市 |24 |
+------+---------------+---------------------------+--------+
11 rows in set (0.17 sec)
このすでに挿入したデータを更新していきたいと思います。
更新するには、UPDATE文を用います。
UPDATE テーブル名 SET カラム名1 = 値1, カラム名2 = 値2, ..., カラム名n = 値n WHERE 条件文;
今回は、listテーブル内の「id = 5」のレコードに更新をしていきます。年齢を「30」に変更してみます。
mysql> UPDATE list SET age = 30 WHERE id = 5;
Query OK, 1 row affected (0.17 sec)
Rows matched: 1 Changed: 1 Warnings: 0
データの変更が更新されているか、確認してみます。
mysql> SELECT * FROM list WHERE id = 5;
+------+---------------+---------------------------+------------+
| id | name | address | age |
+------+---------------+---------------------------+------------+
| 5 | 中山 五郎 | 山梨県山梨市 | 30 |
+------+---------------+---------------------------+------------+
1 row in set (0.17 sec)
変更が確認できました!
最後に挿入したデータの削除方法についてです。
##データを削除する
データを削除するには、DELETE文を用います。
DELETE FROM テーブル名 WHERE 条件文;
ここでは、**「idが6より大きい人のレコード」**を削除してみます。
mysql> DELETE FROM list WHERE id > 6;
Query OK, 5 rows affected (0.19 sec)
データが削除されたかどうか、全件を表示して確認します。
mysql> select * from list;
+------+---------------+---------------------------+-------+
| id | name | address | age |
+------+---------------+---------------------------+-------+
| 1 | 学 太郎 | 東京都世田谷区 |23 |
| 2 | 中村 二郎 | 愛知県稲沢市 |30 |
| 3 | 山科 三郎 | 千葉県千葉市 |27 |
| 4 | 鈴木 一郎 | 福岡県飯塚市 |35 |
| 5 | 中山 五郎 | 山梨県山梨市 |20 |
| 6 | 小林 大介 | 東京都千代田区 |40 |
+------+---------------+---------------------------+--------+
6 rows in set (0.17 sec)
削除されていますね!
これで、データの更新と削除が完了しました!
最後までご覧いただきまして、ありがとうございました。