違いを解説君

あるゆる物事の"違い"をわかりやすく解説する情報マガジン

データベース

ITの違い

SQLとMySQLの違いをわかりやすく解説!言語とデータベースをチェック

投稿日:

『データベース』を扱ったことはありますか?

 

はなこ
職場で『データベース』を使うことになったの。

『SQL』というのを覚えなきゃならないみたいなんだけど、どんなものなの?

僕も使ったことがないからよくわからないな。

『MySQL』というものもあるよね。

たろう
はなこ
何が、どう違うのかしら?

 

今回は、『SQL』と『MySQL』の違いについて解説します。

スポンサーリンク

『SQL』と『MySQL』の違い

プログラミング

まずは、『SQL』について見ていきましょう。

『SQL』を知るためには、まず『リレーショナル・データベース(RDB)』について理解する必要があります。

『リレーショナル・データベース』とは?

『関係モデル』にもとづいて設計されたデータベース

のことです。

 

まず、『データベース』から解説しましょう。

『データベース』とは、登録や検索ができるデータの集まりのことを指します。

例えば、住所録などは『データベース』のひとつと考えることができます。

Excelなどの表計算ソフトを使って、表などを作成することがありますよね。

その表になったデータを蓄え、何らかの情報を手がかりに、そのデータを検索することができるようにしたものが『データベース』です。

Excelで、検索の機能を使って、氏名から住所を調べるようなものと考えれば分かりやすいでしょう。

 

では『関係モデル』とは何でしょうか。

住所録の場合、例えば氏名とその人の住所が登録されているでしょう。

しかし、顧客情報が『データベース』にあるとしたとき、氏名にひもづいたデータは、その人が購入した商品の情報などもあるかも知れません。

顧客の氏名に対して、住所と購入した商品の情報をひとつの表にまとめようとすると、表の列が長くなります。

さらに、氏名に対して購入した日や金額、クレームの有無、お気に入りの製品情報など、様々な情報をひとつの表にまとめると、表が大きくなり、管理も大変になります。

そのため、普通はそれぞれの情報を異なる表に分割して管理する方法をとります。

その場合は、氏名がそれぞれの表をつなぐためのキーになるでしょう。

このような、

複数の表を使ってデータを管理するモデルを『関係モデル』と呼びます。

『関係モデル』を使って設計されたデータベースが『リレーショナル・データベース』なのです。

 

『リレーショナル・データベース』の例

住所録

氏名 住所
たろう 神奈川県横浜市
はなこ 東京都港区

購入した商品情報

氏名 購入商品 購入個数
たろう ケーキ 2
たろう マカロン 1
はなこ チョコレート 1
はなこ アイス 3

 

『SQL』とは?

『リレーショナル・データベース』において、データの操作や定義を行うためのデータベース言語

のことです。

データベースを設計するためには、表を作成したり、データを登録・更新する必要がありますよね。

また、作成されたデータベースを利用するために、必要な情報を検索する機能も必要になります。

このような処理を行うための言語を『SQL』といいます。

『SQL』には、表の作成や削除、データの登録・更新・検索用の命令がそろっています。

 

例えば、さきほど例で紹介した表を検索するためにはselect文を利用します。

『SQL』の例

select 購入商品, 購入個数 from 購入した商品情報

where 氏名 = 'たろう'

商品 個数
ケーキ 2
マカロン 1

 

『MySQL』とは?

オープンソースで公開されている『リレーショナル・データベース』のひとつ

のことです。

『リレーショナル・データベース』には、

  • Oracle社が販売している『Oracle Database』
  • Microsoft社の『Microsoft SQL Server』
  • オープンソースで公開されている『PostgreSQL』

など、様々な種類があります。

 

『MySQL』は、そのような『リレーショナル・データベース』のひとつです。

オープンソースとは、

ソースコードを商用・非商用を問わず利用・修正・頒布することを許可したソフトウェア開発の手法

のことです。

『MySQL』は基本的にオープンソースなため、無償で利用することが可能です。

サポートやツールが利用できる有償版も提供されています。

世界的には、オープンソースの『リレーショナル・データベース』としては『MySQL』のシェアが圧倒的に大きく、

同じくオープンソースであるLinux、Apache、PHPの頭文字をとって『LAMP』という言葉があるほどです。

 

はなこ
なるほど、『SQL』は『リレーショナル・データベース』で表の管理や検索をするために利用される言語のことなのね。

それに対して『MySQL』は『リレーショナル・データベース』そのものを意味するわけか。

Linuxは、Windowsと同じOSのことだよね。

ApacheはWebサーバ用のソフトウェアでインターネットを支える大事なソフトウェアだし、PHPはインターネット上でよく利用されるスクリプト言語のことだね。

『MySQL』も、インターネットを支える上で重要なソフトウェアだということだね。

たろう

スポンサーリンク

まとめ

今回のポイントについて、まとめていきましょう。

ポイント

  • 『リレーショナル・データベース』とは、『関係モデル』にもとづいて設計されたデータベースのことである。
  • 『SQL』とは『リレーショナル・データベース』において、データの操作や定義を行うためのデータベース言語のことである。
  • 『MySQL』とは、オープンソースで公開されている『リレーショナル・データベース』のひとつのことである。
  • Linux、Apache、MySQL、PHPの頭文字をとって『LAMP』と呼ばれ、インターネットを支える重要なソフトウェアを表している。

『SQL』は、現代のデータベースを扱う上で大事な言語です。

『リレーショナル・データベース』を扱う人にとっては、避けて通ることのできないものになります。

関連記事

-ITの違い

Copyright© 違いを解説君 , 2019 All Rights Reserved.