データベースの作り方!MySQLによる作成/表示、テーブルの追加方法まで

MySQLのインストールはできたけど使い方が分からない
MySQLでどんなことができるのか知りたい

学習者の中にはこのように感じている方もいるかもしれません。特にMySQLはSQLを用いてデータベースを管理するシステムで、馴染みが無い人も多いのではないでしょうか?

そこで本記事では実際にMySQLを使って、データベースの作成や削除など基本的な操作方法について分かりやすく解説していきます。

今後Webアプリケーション作成やシステム開発していく上で、非常に重要な内容ですので、この機会にしっかりと理解していきましょう。

目次

MySQLでデータベースを作るには

MySQLとは

この項目では、MySQL(マイエスキューエル)の概要と環境構築について解説していきます。

Repl.it(レプルイット)などの環境構築無しでMySQLを扱う方法もありますが、今回は実務を想定してご自身で環境構築を行い、MySQLの操作を学んで頂きます。

環境構築と聞くとすごく難しそうに感じるかと思いますが、画像付きで分かりやすく解説していきますので、ぜひ皆さんも手を動かして学んでいきましょう。

そもそもMySQLとは

出典:MySQL

MySQLの操作の解説に入る前に、簡単に概要を解説しておきます。

MySQLとは一言で説明すると、「データベース管理システム」を指します。では「データベース」とは一体どのような働きをするのでしょうか?

データベースはTwitterやInstagramなどのWebアプリケーションをイメージすれば理解しやすいかと思います。上記のようなアプリケーションでは、年齢や性別などのユーザー情報を登録したり、記事や画像を投稿することができます。

このような情報はデータベースという場所に保管されます。そしてデータベースは情報を保管するだけでなく、取り出したり削除することもできます。

またこのようにデータベースの情報を検索したり、削除するものを「SQL(エスキューエル)」と呼びます。今回紹介する「MySQL(マイエスキューエル)」はSQLを操作するための言語です。

MySQLが使われているアプリケーションの例として、「Wordpress」が挙げられます。Wordpressは、プログラミングの知識がない方でも簡単に自分のサイトを制作することができるため、非常に多くのユーザーから指示されています。

よりMySQLに関して知りたい方は下記記事を参照してくださいね。

MySQLの気になる関連用語をわかりやすく解説!
更新日:2024年3月29日

MySQLのインストール

MySQLを使うには、まずインストールする必要があります。インストールを行うには、「ターミナル(コマンドプロンプト)」にコマンドを入力して操作していきます。

詳しいインストール方法については下記記事を参照してくださいね。

【初心者向け】MySQLのインストール方法について徹底解説!
更新日:2024年3月21日

なお今回使用するMySQLのヴァージョンは5.7となっています。

MySQLでデータベースを作成・表示する

ITエンジニア

MySQLでデータベースを作る

この項目では実際にMySQLでデータベースを作る方法について解説していきます。分かりやすく解説していきますので、ぜひ実際にご自身で手を動かしてみてくださいね。

また次の項目からMySQLで頻繁に使用するコマンドを紹介していきます。どれも非常に重要なものばかりですので、この機会に操作に慣れておきましょう。

CREATEでデータベースを作成

まず情報を格納するためにデータベースが必要となります。ターミナルを使って、データベースを作成してみましょう。

ターミナルが下記画像のようにMySQLのコマンド操作が可能な状態になっているか確認してください。もしこのような状態になっていなければ、先程紹介した環境構築の記事を読み直してみましょう。

MySQL入力画面

新しいデータベースを作成するには「CREATE databases mysqltry;」をターミナルで入力します。「mysqltry」の部分はデータベースの名前であり、好きな名称を付けることができます。

ちなみに今回はMySQLの練習ということで分かりやすく「mysqltry」としておきました。

[result]
mysql > CREATE databases データベース名;
[/result]

上記コードにある「mysql >」の部分は入力する必要はありません。また必ず末尾に「;(セミコロン)」を付けるのを忘れないようにしましょう。

コマンドを実行して「Query OK, 1 row affected」と表示されたらデータベースが作成された証拠です。次の項目で本当にデータベースを作成できたのか確認していきます。

データベース作成後

SHOWデータベースでデータベースの一覧を確認

ここまででデータベースを作成することができました。しかし本当に作成できているのか確認したいですね。また作成したデータベースの一覧を見たい場合もあるかと思います。

「SHOW databases;」コマンドで作成したデータベースの一覧を表示することができます。ではターミナルに下記のように入力してみましょう。

[code]
SHOW databases;
[/code]

下画像のように表示されればOKです。

今回は「mysqltry」というデータベースのみ表示されていますが、MySQLでは複数のデータベースを同時に管理することができるため、作成した分データベースが表示されます。

データベース表示後

USEデータベースで使用するデータベースを選択

先程MySQLは複数のデータベースを作成できると説明しました。では複数存在する場合、どのようにして作業するデータベースを選択することができるのでしょうか?

MySQLには「USE」というコマンドが用意されており、使用するデータベースを自由に選択することができます。コマンドに「USE 作成したデータベース名」を入力するだけでOKです。

下記のようにコマンドを入力してみましょう。「Database changed」が表示されれば指定したデータベースを選択できた証拠です。

データベース選択後

CREATEテーブルでテーブルを作成

次にデータベースに「テーブル」を作成していきます。テーブルは格納されたデータが整理されたものを指します。

ここではExcelのように行と列が存在する表のようなものだと理解しておいてください。このテーブルがあるおかげでMySQLは自由にデータを取り出したり、削除することができるわけです。

ここではユーザー情報を保管する「user」というテーブルを作成していきます。今回はuserテーブルに「id」、「name」という2つのカラム(テーブルの列)を用意します。

カラムはデータベースを扱う上で非常に重要な言葉ですので、この機会に覚えておきましょう。

それではターミナルで下のようにコマンドを入力してみましょう。macとwindowsで多少コマンドが異なりますので、ご注意ください。

[macの場合]
[code]
CREATE TABLE users (id INT AUTO_INCREMENT, name TEXT, PRIMARY KEY (id));
[/code]
[windowsの場合]
[code]
CREATE TABLE users (id INT AUTO_INCREMENT, name TEXT, PRIMARY KEY (id)) DEFAULT CHARSET=utf8;
[/code]

上記コマンドの中身が何を表しているのかを解説していきます。

  • users:作成するテーブルの名前
  • id:idというカラム名
  • INT:idカラムのデータ型が「整数」という意味。INTは英語のIntegerの略
  • AUTO_INCREMENT:idの数字を連続した値にすることが可能。例えば、id= 1, id= 2, id =3….という感じです。
  • name:nameというカラム名
  • TEXT :nemeカラムのデータ型が「文字」という意味。
  • PRIMARY KEY (id) :重複したidが生成されないようになります。例えばid=1,id=2が存在する場合、新しく生成されるidは1と2以外の数字となります。

上記コマンドを見ると複雑に見えるかもしれませんが、テーブルを作成する際の型は下記のようにシンプルに表すことができます。

[result]
CREATE TABLE テーブル名(カラム_1の名前 カラム_1のデータ型, カラム_2の名前 カラム_2のデータ型....)
[/result]

SHOWで作成したテーブルを確認する

前項でテーブルを作成することができました。ターミナルで下記のように入力してみましょう。

[code]
SHOW tables;
[/code]

下画像のように表示されればOKです。

テーブル表示後

ちなみにコマンドを実行して「Empty set(0.00sec)」と表示された場合は、テーブルが作成されていない状態です。MySQLを使用する場合は、エラーを防ぐためにもその都度テーブルの状態を確認することをオススメします。

DESCRIBEで作成したテーブルの中身を確認する

この項目では作成したテーブルの中身を確認してみましょう。ターミナルで下記コマンドを入力してみましょう。

[code]
DESCRIBE users;
[/code]

下画像のようにテーブルの状態が表示されればOKです。テーブル作成時に追加した「id」や「name」が存在していることが分かるかと思います。

テーブル詳細画面

MySQLでテーブルのデータを追加・削除する

開発環境

テーブルの追加・削除の方法

この項目ではテーブルにデータを追加したり、削除する方法を解説していきます。追加したカラムが不要になったり、カラムのデータ型を途中で変更したい場合があります。

自由自在にカラムの内容を扱えるようになりましょう。

INSERT文でカラムにデータを追加する

テーブルのカラムにデータを追加するには「INSERT」を使用します。

[result]
INSERT INTO テーブル名(カラム名) VALUES ('追加したい値’');
[/result]

今回はnameカラムに「ジョン」という値を追加してみます。下記コマンドをターミナルで入力してみましょう。

[code]
INSERT INTO users(name) VALUES ('ジョン');
[/code]

コマンドを実行して「Query OK, 1 row affected (0.01 sec)」と表示されればOKです。実際にカラムにデータが追加されたか確認するために、下記コマンドを入力してみましょう。

カラム追加後

[code]
SELECT * FROM users;
[/code]

コマンドを実行すると、下画像のように「ジョン」が追加されていることが確認できました。

カラム追加後

DELETEコマンドでカラムの値を削除する

カラムの中のデータを削除してみましょう。「DELETE」コマンドを使えば削除することができます。

指定したカラムの値を削除したい場合は、下記コマンドで可能です。「WHERE」を指定しないと、テーブルに保管されているデータ全てが削除されるので注意が必要です。

DELETE FROM テーブル名 WHERE カラム名 = 値;

今回はid = 1のカラムを削除してみます。ターミナルで下記コマンドを入力して実行してください。

[code]
DELETE FROM users WHERE id = 1;
[/code]

カラム削除後

「Query OK, 1 row affected (0.05 sec)」と表示されればOKです。試しに「SELECT * FROM users;」を入力してテーブルの中身を確認してください。

「Empty set (0.00 sec)」と表示されれば、指定したカラムが削除できたことになります。

カラム削除後

DROPコマンドでテーブルを削除する

最後にテーブルを削除してみましょう。テーブルを一度削除すると、復元できないため注意が必要です。

今回はここまでで作成してきた「user」テーブルを削除していきます。テーブルの削除は「DROP」コマンドで可能です。

[code]
DROP TABLE users;
[/code]

テーブル削除後

「Query OK, 0 rows affected (0.01 sec)」と表示されれば、テーブルが削除された証拠です。

挫折なくSQLの習得を目指すなら

ここまでの解説を踏まえ、独学でMySQLを扱うスキルやSQL言語を習得しようと考えている人のなかには、

独学で習得できるかな…
途中で挫折したらどうしよう…

と不安な人もいますよね。

実のところ、SQLといったプログラミング言語の学習途中で挫折する独学者は多くいます。事実、弊社の調査では

  • 不明点を聞ける環境になかった
  • エラーが解決できなかった
  • モチベーションが続かなかった

などの理由から、87.5%が「プログラミング学習で挫折や行き詰まりを感じた」と回答しています。

87.5%の人がプログラミング学習時に挫折を経験
不明点やエラーが解決できずプログラミングを挫折した人が多数

調査概要:プログラミング学習の挫折に関するアンケート
調査対象:10代〜80代の男女298名
調査期間:2019年8月13日~8月20日
調査方法:インターネット調査
掲載元:PR TIMES

また、こうした背景もあってか、弊社がプログラミングに興味がある人100名へ実施した別の調査では

  • 確実にスキルを身につけられると思ったから
  • 独学では不安がある
  • 効率よく学べそう

などの理由から、61%が「プログラミングの勉強を始めるならスクールを選ぶ」と回答しています。

61%の人がプログラミングの勉強を始めるならスクールが良いと回答
確実にスキルを身につけられそうという理由でプログラミングスクールを選ぶ人が多い

調査概要:プログラミングに興味がある方の意識調査
調査期間:2021/11/19~2021/12/3
対象者:プログラミング学習を検討している10代~50代の男女100名
調査媒体:クラウドワークス
掲載元:PR TIMES

加えて、プログラミングスクールの卒業生に「独学ではなくスクールを活用した理由」を聞いたところ「できるだけ短い期間でITエンジニアへの転職や副業に必要なスキルを身につけたかった」という回答も多く寄せられました。

上記から、1人でプログラミングスキルを習得できるか不安な人や短期間でスキルを習得したい人ほど確実性を求め、現役エンジニアといったプロの講師に質問できるプログラミングスクールを利用する傾向にあるのがわかります。

いざ独学でプログラミングを学び始めても、勉強の最中に挫折しまっては学習にかけた時間を悔やむだけでなく「プログラミングスキルを身につけるのって思っていたよりも難しいんだな…」とSQLの習得自体を諦めかねません。

仮にわからないことを飛ばしながら勉強を進めたとしても、ITエンジニアへの転職や副業での収入獲得を実現できる実践的なスキルが身につかなければ、結局後悔することになります。

そこで、おすすめしたいのが「SAMURAI ENGINEER(侍エンジニア)」です。

300x300-samuraiengineer (1)
6
700x700_01 (1)
700x700_02
700x700_03
700x700_04
700x700_05
700x700_06
700x700_07
700x700_08
300x300-samuraiengineer (1)
6
700x700_01 (1)
700x700_02
700x700_03
700x700_04
700x700_05
700x700_06
700x700_07
700x700_08
previous arrow
next arrow
料金月分割4.098円~
実績・累計指導実績4万5,000名以上
・受講生の学習完了率98%
・受講生の転職成功率99%

侍エンジニアをおすすめする最大の理由は「挫折しづらい学習環境」にあります。

先ほど述べたとおり、独学者の多くは自力で不明点やエラーを解決できないためにプログラミング学習を挫折しています。そのため、未経験者が現役エンジニアのようなプロに質問や相談できない状況で、プログラミングスキルを習得するのは非常に難易度が高いといえます。

しかし、侍エンジニアでは

  • 現役エンジニア講師によるマンツーマンレッスン
  • 現役エンジニアに質問できるオンラインでのQ&Aサービス
  • 不安や悩み・勉強の進み具合を相談できる学習コーチ

といったサポート体制を整えているため、学習中に出てきたわからないことや不明点をいつでも相談可能です。「受講生の学習完了率98%「転職成功率99%」という実績からも、侍エンジニアなら挫折しづらい環境でプログラミング学習を進められるといえます。

侍エンジニアのサポート体制_01 (1)
侍エンジニアのサポート体制_02 (1)
侍エンジニアのサポート体制_03 (1)
侍エンジニアのサポート体制_04 (1)
侍エンジニアのサポート体制_01 (1)
侍エンジニアのサポート体制_02 (1)
侍エンジニアのサポート体制_03 (1)
侍エンジニアのサポート体制_04 (1)
previous arrow
next arrow

侍エンジニアのサポート体制

また、侍エンジニアではカウンセリングにて受講生一人ひとりの目的をヒアリングしたうえでカリキュラムを作成するため、限られた受講期間でも効率的に必要なスキルだけを習得可能です。

6
出典:httpscodecamp.jpcoursesmaster_design
3
出典:httpscodecamp.jpcoursesmaster_design (2) (1)
4
5
6
出典:httpscodecamp.jpcoursesmaster_design
3
出典:httpscodecamp.jpcoursesmaster_design (2) (1)
4
5
previous arrow
next arrow

侍エンジニアのカリキュラム例

最短距離で目的を実現できるようカリキュラムが組まれているため、勉強する順番や内容を誤り非効率に時間や手間を費やす心配もありません。

なぜ侍エンジニアが挫折せずSQL言語を習得できるのか気になる人はぜひ公式サイトをご覧ください。

公式サイトで詳細を見る

まとめ

ここまでMySQLのコマンド操作について解説してきました。慣れないコマンドが沢山出てきて大変だったかもしれませんが、最後に本記事の内容をまとめておきますので、復習する際に参考にしてみてくださいね。

[1]MySQLはデータベースを操作するための言語
[2]MySQLはWebアプリケーションに必須
[3]MySQLはテーブルを追加したり、削除することができる
[4]データはカラムに追加される

この記事を書いた人

【プロフィール】
DX認定取得事業者に選定されている株式会社SAMURAIのマーケティング・コミュニケーション部が運営。「質の高いIT教育を、すべての人に」をミッションに、IT・プログラミングを学び始めた初学者の方に向け記事を執筆。
累計指導者数4万5,000名以上のプログラミングスクール「侍エンジニア」、累計登録者数1万8,000人以上のオンライン学習サービス「侍テラコヤ」で扱う教材開発のノウハウ、2013年の創業から運営で得た知見に基づき、記事の執筆だけでなく編集・監修も担当しています。
【専門分野】
IT/Web開発/AI・ロボット開発/インフラ開発/ゲーム開発/AI/Webデザイン
【SNS】
X(旧:Twitter)/Instagram/YouTube/Facebook

目次