SQL文を実際に書いて練習したいけど、データを用意するのがめんどくさい!
大丈夫です。
必要なデータはコピーして貼り付けるだけで自動的に作成されるようにしておきました。
必要なデータを準備しよう
MySQLへのログイン方法はこの記事で紹介しています▼
MySQLにログインしたら、以下をそのままコピーして貼り付けてください。
DROP DATABASE IF EXISTS test_db;CREATE DATABASE test_db CHARACTER SET utf8;USE test_db;
CREATE TABLE users (id int AUTO_INCREMENT PRIMARY KEY, name varchar(16), pass varchar(8), age int(3), score int (3));
INSERT INTO users (name, pass, age, score) VALUES ('田中太郎', 'taro', 25, 60), ('上川真司', 'shinji', 42, 80), ('滝沢希', 'nozomi', 43, 80), ('多田隆史', 'takashi', 44, 100), ('松本文明', 'humiaki', 22, 35), ('谷口詩織', 'shiori', 29, 52), ('安倍陽介', 'yosuke', 29, 0), ('飯島伸明', 'nobuaki', 66, 82), ('長嶋優', 'yuu', 69, 78);INSERT INTO users (name, pass, age) VALUES ('田村恵', 'megumi', 45);
SELECT * FROM users;
エンターを押すと、10件分のデータが表示されるはずです。
ちょっと解説
何が起きたのか軽く解説しておきます。
「もしtest_dbという名前のDBが存在していたらそれを削除する」
というのを以下で表しています。
DROP DATABASE IF EXISTS test_db;
あとは、「CREATE DATABASE」と「CREATE TABLE」と「INSERT文」を一気に繋げているだけです。
そして最後に「SELECT文」を使って確認のために表示してみた。
ということになります。
データをリセットしたい時は、そのまま貼り付け直すだけでOKです!
(先頭で、もしtest_dbという名前のDBが存在していたら、削除するという処理を入れているので。)
SELECT文
SELECT文の構文です↓
SELECT 取得したいカラム名 FROM テーブル名;
<ちょっと解説>
- 「取得したいカラム名」が複数ある場合はカンマ区切りで並べていきます。
- 「取得したいカラム名」が全部の場合は「*」で代用できます。
- 条件がある場合は、テーブル名の後ろに「WHERE …」と続けます。
- 複数の条件がある場合は「AND」か「OR」を使う(if文と考え方は同じ)
練習してみよう
問題
- 名前が「田中太郎」の人のカラム名を全て取得してください
- 年齢が30歳以上の人を取得してください
- スコアが70~80までの人の名前だけを取得してください。
解答
- SELECT * FROM users WHERE name = “田中太郎”;
- SELECT * FROM users WHERE age >= 30;
- SELECT * FROM users WHERE score >= 70 AND score <= 80;
UPDATE文
UPDATE文の構文です↓
UPDATE テーブル名 SET 変更したいカラム名 = "変更したい値" where = 条件;
<ちょっと解説>
- 条件を付けないと、全てのデータが更新対象になってしまいます。
練習してみよう
問題
- idが3の人の名前を自分の名前に変更してください。
解答
- UPDATE users SET name = “ふくろう” WHERE id = 3;
DELETE文
DELETE文の構文です↓
DELETE FROM テーブル名 WHERE 条件
<ちょっと解説>
- 条件を付けないと、全てのデータが削除対象になってしまいます。
練習してみよう
問題
- scoreが50以下の人を全て削除してください
解答
- DELETE FROM users WHERE score >= 50;
INSERT文
DELETE文の構文です↓
INSERT INTO テーブル名 (追加したい列名) VALUES (追加したい値);
<ちょっと解説>
- 追加したい列名に並べた順番に、値を並べてく必要がある
練習してみよう
問題
- 一件分の自分の情報でデータを登録してください。(値は自由です)
解答
- INSERT INTO users (name, pass, age, score) VALUES (“フクロウ”, “owl”, 26, 90);
PHPのプログラムコードでMySQLにログインする方法
一般的にどんなアプリでも、DBへのアクセスが必要になる事がほとんどです。
MySQLへログインするというのは、コマンドプロンプトやターミナルに直接入力してもログインできますが、
PHPのコードで全て自動化させることもできます。
その全ての手順をこの記事で紹介しています▼