- 公開日: 2020年10月27日
【初心者必見】MySQLのコマンドをわかりやすく解説
プログラミング初心者の中には「MySQL(マイエスキューエル)でどのようなことができるか分からない」と感じている方もいるのではないでしょうか。特にMySQLはHTMLやCSSと違い、システムを陰で支えているデータベースを扱う言語なので、なかなか触れる機会がないかと思います。
そこで今回は実際にMySQLのコマンドを使い、データベースの作成や削除といった基本操作について解説していきます。できるかぎり図を交えて分かりやすく解説していきますので、ぜひ参考にしてみてください。
- MySQLとは
- MySQLをインストールしよう
- MySQLでデータベースを使ってみよう
- まずはMySQLを起動させよう
- データベースを作成しよう「CREATE」編
- データベースでデータベースを表示しよう「SHOW」編
- 使用するデータベースを選択しよう 「USE」編
- テーブルを作成してみよう 「CREATE」編
- 作成したテーブルを確認してみよう 「SHOW」編
- DESCRIBEで作成したテーブルの中身を確認しよう
- MySQLでテーブルを使ってみよう
- INSERT文でカラムにデータを追加しよう
- UPDATEコマンドでカラムの中身を更新しよう
- DELETEコマンドでカラムの値を削除しよう
- DROPコマンドでテーブルを削除しよう
- まとめ
MySQLとは
まずはMySQLについて簡単に説明していきます。 MySQLとは一言で説明すると、「データベース管理システム」です。
出典:MySQL(https://www.mysql.com/jp/)
Webアプリケーションをイメージすればデータベースについて理解しやすいでしょう。例えばTwitterはユーザーがアイコン画像やアカウント名などプロフィールを登録できたり、文章や写真を投稿できます。
これらの情報はデータベースに保管されているのです。
Webアプリケーションにとってデータベースは非常に重要な位置付けと言えます。そのデータベースの情報を検索したり削除するシステムを「SQL(エスキューエル)」と呼んでいます。本記事で解説する「MySQL(マイエスキューエル)」はSQLを操作するための言語です。
MySQLは様々な場面で使用されており、その中でも有名なのが『Wordpress』です。WordpressとはHTMLやPHPなどプログラミングが分からない方でも簡単にWebサイトを制作できるため、多くのユーザーから高い評価を得ています。
MySQLをインストールしよう
この章からは実際にMySQLを使ってみましょう。そのためには、まずMySQLをパソコンにインストールする必要があります。
詳しいインストール方法は下記記事で解説していますので参考にしてみてくださいね。なお今回はMySQLのヴァージョン5.7を使用して解説していきます。
参考記事:MySQLのインストールについて
MySQLでデータベースを使ってみよう
実際にMySQLでデータベースを作っていきましょう。図を交えて分かりやすく解説していきますので、ぜひ皆さんも手を動かして作業してくださいね。
まずはMySQLを起動させよう
まずはMySQLを起動するために、ターミナル(コマンドプロンプト)で下記コマンドを入力してみましょう。
brew services start mysql@5.7
今回使用するMySQLのヴァージョンが5.7であるため、「@5.7」となっています。ターミナルに下記コマンドを入力することで、皆さんがインストールしたMySQLのヴァージョンを確認可能です。
mysql --version
MySQLを起動させると下画像のようにMySQLのコマンドを入力できる状態になります。次章以降で紹介するコマンドを入力する際は、まずMySQLが起動していることを確認するようにしてください。
画像:MySQL入力画面
データベースを作成しよう「CREATE」編
まずはデータベースを作成していきましょう。データはテーブルと呼ばれる表に保存されていきます。例えば、ユーザーのプロフィールを保存するテーブルや投稿したブログ記事の内容を保管するものなど、保存する情報によって分けてテーブルを作成するのが一般的です。
データベースは下図のように作成したテーブルをまとめて管理する役割があります。
新しいデータベースを作成するには下記コマンドをターミナルに入力します。必ず末尾に「;(セミコロン)」を付けるのを忘れないようにしましょう。
CREATE databases mysqldemo;
仮に下画像のようにコマンド入力を間違っても問題ありません。矢印の後に「Control + C」を入力すると再度コマンド入力が可能です。
画像:コマンド入力ミスした場合
また「mysqldemo」の部分データベースの名前であり、好きな名称を付けることができます。今回は分かりやすく「mysqldemo」としておきました。
このようにどんな内容か一目で分かるように名称をつけておくと、作業しやすいと思いますのでぜひ参考にしてくださいね。
さてコマンドを実行して「Query OK, 1 row affected」と表示されたらデータベースが作成された証拠です。
データベースでデータベースを表示しよう「SHOW」編
データを格納するために必要なデータベースを作成できました。次に作成したデータベースを確認していきます。
下記コマンドで作成したデータベースの一覧を表示できるので、ターミナルに入力してください。
SHOW databases;
下画像のように「mysqldemo」というデータベースが表示されていればOKです。複数のデータベースを作成した場合はその分表示されます。
画像:SHOWコマンド入力後
使用するデータベースを選択しよう 「USE」編
先程MySQLは複数のデータベースを作成できると説明しました。複数データベースが存在する場合、どれを使って作業するのか選択してあげる必要があります。
MySQLには「USE」というコマンドが用意されており、使用するデータベースを選択することが可能です。コマンドに「USE 作成したデータベース名」を入力するだけでOKです。
下記のようにターミナルにコマンドを入力してみましょう。
USE mysqldemo;
「Database changed」が表示されればOKです。
画像:USEコマンド入力後
テーブルを作成してみよう 「CREATE」編
次にデータベースの中にUserという名称の「テーブル」を作成していきます。
ターミナルで下のようにコマンドを入力してみましょう。macとwindowsで多少コマンドが異なりますので、ご注意ください。
[macの場合]
CREATE TABLE users (id INT AUTO_INCREMENT, name TEXT,gender TEXT, email TEXT, PRIMARY KEY (id));
[windowsの場合]
CREATE TABLE users (id INT AUTO_INCREMENT, name TEXT,gender TEXT, email TEXT, PRIMARY KEY (id)),DEFAULT CHARSET=utf8;
コマンド実行後に下画像のようになればOKです。
コマンドの内容を分かりやすくしたものが下図になります。図の中にあるIDやnameなどがカラムです。
またテーブルを作成する際は保存するデータが数字や文字なのか指定。詳細は下記を参照ください。
▶︎INT:idカラムのデータ型が「整数」という意味です。ちなみにINTは英語のIntegerの略となります。
▶︎AUTO_INCREMENT:idの数字を連続した値にすることが可能です。
▶︎TEXT :nemeカラムのデータ型が「文字」という意味になります。
▶︎PRIMARY KEY (id) :重複したidが生成されません。例えばid=1,id=2が存在する場合、新しく生成されるidは1と2以外の数字となります。
今回使用したコマンドは少し複雑ですが、基本の型を覚えておけば理解しやすいです。
CREATE TABLE テーブル名(カラム_1の名前 カラム_1のデータ型, カラム_2の名前 カラム_2のデータ型....)
作成したテーブルを確認してみよう 「SHOW」編
ここまででテーブルを作成することができました。次にターミナルで下記のように入力してみましょう。
SHOW tables;
下画像のように表示されればOKです。
画像:SHOWコマンド入力後
コマンドを実行して「Empty set(0.00sec)」と表示された場合は、テーブルが作成されていない状態です。
画像:テーブルが無い場合
DESCRIBEで作成したテーブルの中身を確認しよう
この項目では作成したテーブルの中身を確認していきます。ターミナルで下記コマンドを入力してみましょう。
DESCRIBE users;
下画像のようにテーブルの状態が表示されればOKです。テーブル作成時に追加した「id」や「name」が存在していることが分かるかと思います。
テーブル詳細画面
MySQLでテーブルを使ってみよう
実際の開発現場でも、追加したカラムが不要になったり、カラムのデータ型を途中で変更したい場合があります。この項目ではテーブルへデータを追加・削除する方法を解説していきます。
INSERT文でカラムにデータを追加しよう
次に「INSERT」コマンドを使用して、テーブルのカラムにデータを追加していきましょう。
INSERT INTO テーブル名(カラム名) VALUES ('追加したい値’');
今回はここまで作成してきたカラムに下記のような値を追加していきます。コマンドを実行して「Query OK, 1 row affected (0.01 sec)」と表示されればOKです。
INSERT INTO users VALUES (1,'Taro','male','taro@gmail.com');
コマンド実行後のデータベースの状態は下図のような状態です。これで「Taro」というユーザーの情報を保存できました。
実際にカラムにデータが追加されたか確認するために下記コマンドを入力してみましょう。
SELECT * FROM users;
コマンドを実行すると下画像のように「Taro」の情報が追加されていることが確認できました。
画像:カラム追加後
同じ方法で「Hanako」というユーザーをテーブルに追加してみましょう。コマンドは下記の通りです。
INSERT INTO users VALUES (2,'Hanako','female','hanako@gmail.com');
SELECTコマンドでテーブルの状態を確認してください。
SELECT * FROM users;
下図のように表示されればOKです。
UPDATEコマンドでカラムの中身を更新しよう
次にテーブルの中の情報を更新する方法について解説していきます。間違った情報を入力してしまったり、データを変更したい場合に有効な方法です。
例えば下図のように本来「male」と入力するところを「mail」とした場合を考えてみます。
ターミナルで下記コマンドを入力してください。
UPDATE user set gender = 'male' where id = 1;
これでテーブルの内容を更新できたはずです。試しにSELECTコマンドを使って確認してみましょう。
SELECT * FROM users;
「male」に置き換わっていることが分かります。このようにデータを入力する際に間違えても、後から修正することができますね。
DELETEコマンドでカラムの値を削除しよう
カラムの中のデータを削除してみましょう。
指定したカラムの値を削除したい場合は下記コマンドを入力してください。「WHERE」を指定しないと、テーブルに保管されているデータ全てが削除されるので注意が必要です。
DELETE FROM テーブル名 WHERE カラム名 = 値;
今回はid = 1のカラムを削除してみます。ターミナルで下記コマンドを入力して実行してください。
DELETE FROM users WHERE id = 1;
「Query OK, 1 row affected (0.05 sec)」と表示されればOKです。
画像:カラム削除後
試しに「」を入力してテーブルの中身を確認してください。
SELECT * FROM users;
「Taro」の情報が削除されていることが分かります。
画像:カラム削除後
DROPコマンドでテーブルを削除しよう
最後にテーブルを削除してみましょう。テーブルを一度削除すると、復元できないため注意が必要です。
今回はここまでで作成してきた「user」テーブルを削除していきます。テーブルの削除は「DROP」コマンドで可能です。
DROP TABLE users;
画像:テーブル削除後
「Query OK, 0 rows affected (0.01 sec)」と表示されれば、テーブルが削除された証拠です。
\一流デザイナーのスキルが身に付く/
まとめ
ここまでデータベースの操作方法について解説してきました。たくさんコマンドが出てきて大変だったと思いますが、どれも非常に重要なものばかりです。
ぜひ今回紹介したコマンドを使って、少しずつMySQLの理解を深めていってくださいね。
- この記事を書いた人
- ヤマモト