SQLはアプリ開発のどこで使うの?わかりやすい図で徹底解説!


SQLはアプリ開発するときどこで使うんだろう・・・
SQLをこれから学ぶときは何から始めればいいの?

「SQLはアプリ開発のどこで使うんだろう?」と、疑問を持っている方もいるのではないでしょうか。また、アプリ開発に必要なら学びたいけど、学ぶときは何を学べばいいのかよくわからない...と思っている人もいるかもしれませんね。

こんにちは!フリーランスエンジニア兼テックライターのワキザカです。

この記事では、SQLを開発で必要になる理由を、わかりやすい図で徹底解説します!

また、開発環境の作り方・具体的なSQLの学習手順ついても解説しているので、これからSQLを学ぶ方にもおすすめです。

この記事はこんな人のために書きました。

  • SQLはアプリ開発のどこで使うのか知りたい人
  • SQLをこれから学ぶときの学習手順を知りたい人
  • SQLの基礎的な書き方を覚えたい人

SQLはアプリ開発のどこで使うの?

まず、SQLがアプリ開発のどこで使うのか、簡単に解説します。

アプリは、画面から入力した値をデータベースに登録したり、登録されたデータを表示したり、データベースはほとんど必ず使いますよね。たとえば、データ登録するときは以下のような流れになります。


データベースにアプリ登録する流れ

データベースに登録する赤い矢印の処理を作るときに使うのが、SQLです。そのため、データ登録・更新・削除・取得のようなデータありきで動くアプリを作るときは、必須技術です。

データ操作に特化しているので覚えることもシンプルですし、SQLの基礎や書き方を覚えておくのがおすすめです。

開発に必要なSQLの基礎とは?

次に、SQLの基礎について解説します。SQLと一口に言っても、以下のように2つの書き方があります。

SQLの2つの種類

  • DDL
  • DML

それぞれ詳しく解説しますね。

DDLとは?

DDLは、データベース・テーブルを操作する時の文法です。データベースは、以下のようなデータ構造になっています。


データベースのデータ構造

そのため、データベース・テーブルなどを作成するところが最初のステップです。作成後も、定義を変更したり、不要になったテーブルを削除するときもDDLを使います。

DDLは、以下の3つの書き方があります。

DDLの書き方

  • CREATE:データベース・テーブルの作成
  • ALTER:データベース・テーブルの定義変更
  • DROP:データベース・テーブルの削除

まずは、データベースやテーブルの定義を操作出来るということを覚えておけばOKです。

DMLとは?

DMLは、テーブルのレコードを操作するための文法です。レコードにデータを登録したり、登録されたデータを取得することができます。

DMLは、以下の4つの書き方があります。

DMLの書き方

  • INSERT:レコードのデータ挿入
  • SELECT:レコードのデータ検索
  • UPDATE:レコードのデータ更新
  • DELETE:レコードのデータ削除

始めてSQLを使う時は、CREATE文でテーブルを作成し、INSERT文でレコードのデータを挿入するのが最初のステップです。データ挿入後は、SELECT文でデータを表示したり、UPDATE文でデータ更新する流れになります。

SQLを開発で使えるようにするには何を準備すればいい?

ここまで、アプリ開発でSQLを使う場所・SQLの基礎について解説しました。次に、SQLを開発で使えるようにするための、環境構築方法について解説しますね。

データベースにはいくつか種類がありますが、初めて使う時はMySQLを入れるのがおすすめです。以下で開発環境構築方法について解説しているので、見ながらインストールするのがおすすめです!

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

データベースごとに若干書き方が変わるのでおすすめはしませんが、WEBでSQL実行環境を用意する方法もあります。paiza.ioをつかえば、アカウント登録だけで簡単に環境が作れるので、サクッと用意したい方はコチラもおすすめです!

参考:paiza.io https://paiza.io/ja

【SQL超基礎】サンプルの作り方を徹底解説!

次に、簡単なSQLの書き方について、サンプルを交えて解説します!

今回は、以下の流れでSQLを書いていきますね。

今回作るテーブルのデータ:

今回作るテーブルのデータ

サンプルSQLを作る流れ

  • 手順1:CREATE文でテーブル作成
  • 手順2:INSERT文 + SELECT文でデータ操作

CREATE文でテーブル作成

まず、CREATE文でテーブルを作ります。

CREATE文のSQLの書き方は、次のとおりです。

CREATE文のSQL:

-- CREATE文でusersテーブル作成
CREATE TABLE `users` (
    `id` INT(11),
    `name` VARCHAR(50),
    `age` INT(11)
);

-- DESCでテーブル定義確認
DESC users;

実行結果:

| Field | Type | Null | Key | Default | Extra | 
| --- | --- | --- | --- | --- | --- | 
| id | int(11) | YES |  | N |  | 
| name | varchar(50) | YES |  | N |  | 
| age | int(11) | YES |  | N |  | 

usersテーブルを作成することができました。intは数値型、varcharは文字列型を表しています。

テーブルを作るときは各項目に型を定義するので、覚えておくのがおすすめです。

ちなみに、CREATE文の詳しい使い方は以下で解説しています。興味がある方は、ぜひ参考にしてみてくださいね。

【MySQL入門】CREATE TABLE文でテーブルを作成する方法
更新日 : 2021年8月1日

INSERT文+SELECT文でデータ操作

テーブルができたら、INSERT文でデータを挿入していきましょう。データ挿入だけだと結果がわかりづらいので、挿入後にSELECT文でデータ表示もしますね。

具体的な書き方は、以下のとおりです。

INSERT文でデータ挿入後にSELECT文でデータ表示するSQL:

-- INSERT文でデータ挿入
INSERT INTO users(id,name,age) VALUES('1','侍1','22');  
INSERT INTO users(id,name,age) VALUES('2','侍2','23');
INSERT INTO users(id,name,age) VALUES('3','侍3','25');
INSERT INTO users(id,name,age) VALUES('4','侍4','27');
INSERT INTO users(id,name,age) VALUES('5','侍5','21');

-- SELECT文でデータ検索
SELECT
  *
FROM
  users;

実行結果:

| id | name | age | 
| ---: | --- | ---: | 
| 1 | 侍1 | 22 | 
| 2 | 侍2 | 23 | 
| 3 | 侍3 | 25 | 
| 4 | 侍4 | 27 | 
| 5 | 侍5 | 21 | 

5件のデータが挿入されて、結果に表示されていますよね。このように簡単にデータ登録・確認ができます。

ちなみに、SELECT文は全てのデータを表示していますが、WHEREを付けてデータを絞り込むこともできます。詳しい書き方は以下で解説しているので、続けてみていくのがおすすめです!

まとめ

今回は、SQLがアプリ開発に必要になる理由について解説しました。

SQLはデータ操作がメインなので、学びやすいのが特徴です。

少しずつでもいいので、ぜひ実際にSQLを書いてみてくださいね!

Writer

Sanshiro Wakizaka

フリーランス

北海道出身の30歳で、フリーランスエンジニア兼テックライターとして活動中。新卒入社したメーカー系のIT企業で、システムエンジニアとして約5年勤務。

Webアプリ、業務アプリ開発において、要件定義 ~ 運用保守まで様々な経験あり。また3歳の娘がいる1児のパパで、日々娘との時間を確保するために仕事を頑張っています!
侍エンジニアでは、【誰でもわかるレベルのわかりやすさ】を意識して、記事を執筆中。

あなたの目的に合わせた
SAMURAI ENGINEERの運営サービス

SAMURAI ENGINEER Pro

未経験でも挫折しないプログラミングスクール

詳細はこちら

SAMURAI ENGINEER Plus

日本最大級のサブスク型オンラインITスクール

詳細はこちら

SAMURAI ENGINEER Freelance

「一人で稼げる」スキルを身につける

詳細はこちら