エンジニア

SQLとは?SQLからデータベースの種類までエンジニアが徹底解説

SQLはデータベース言語の一つで、データベースの定義や操作を行うことができます。

様々なプログラム言語と組み合わせて利用され、世にあるシステムのほとんどがSQLを使っているので必ず習得したうスキルの一つです。

今回はデータベース言語であるSQLの基礎知識や言語の種類、特徴などについてご紹介します。

SQLとは

SQLはStructured Query Language の略です。読み方はストラクチャード・クエリ・ランゲージです。こちらを日本語に訳してみると、構造化問い合わせ言語になります。

SQLの役割とは

SQLはデータを問い合わせするためのプログラミング言語です。データベースに対して問い合わせを行います。

SQLが使えるのはRDBMS(アールディービーエムエス)という種類のデータベースになります。

RDBMSでは、テーブルという表形式の構造でデータを管理するようになっています。クライアントからデータベースサーバーに命令しデータベースサーヴァーがデータを加工します。

簡単説明

データベース内のテーブルからデータを引っ張り出したり、データを追加したり、削除したりするための命令がSQLです。

データベースの種類

世の中には様々なデータベースソフトが存在します。製品として販売されているものやオープンなフリーソフト、製品だが個人的な学習なら使用できるものなどいろいろあります。

今回はその中でも有名なものを少し紹介していきます。

Oracle(オラクル)

OracleはOracle社が開発したデータベース。歴史が古く、多くのシステムでOracleデータベースが使用されています。

機能や動作速度、堅牢性に定評があり、たくさんの企業で使われているデータベースです。

 

DB2(ディービーツー)

DB2はIBM社が開発したOracle同様古くからあるデータベースです。

高速で柔軟に処理できるXML機能が搭載されていることはDB2の最大の特徴です。

SQL Server(エスキューエルサーバー)

SQL ServerはMicrosoft社が開発したWindowsプラットフォームで稼働する比較的新しいデータベースです。

コマンドを打たずにマウス操作だけでデータベースを管理することができるのが、魅力です。

PostgreSQL(ポストグレスキューエル)

PostgreSQLは、オープンソースコミュニティが開発したフリーソフトのデータベースです。

大規模商用データベースが持つような機能を持っていることが特徴です。

MySQL/MariaDB(マイエスキューエル)/(マリアディービー)

MySQLもオープンソースコミュニティが開発したデータベースだったのですが、Oracle社に引き取られました。オープンソースコミュニティでの開発も並行して行われており、こちらはMariaDBと呼ばれています。

MySQLはXAMPPで標準インストールされ、PHPとの相性が非常に良いことがあげられます。

SQLite(エスキューエルライト)

SQLiteは組み込み型の軽量なデータベースソフトです。

アプリケーションに組み込んで利用されることを想定しており、Android端末の標準ライブラリとして採用されているのも特徴です。

H2Database(エイチツーデータベース)

H2Databaseも組み込み型の軽量データベースです。こちらはJavaで書かれておりますのでJavaで作成されたアプリケーションと相性が良いです。

軽量なだけあって動作速度がきわめて高速というのが特徴です。

初心者向けのデータベースが学べる本

マンガでわかるデータベース


初心者の方はまずはマンガからデータベースを簡単に理解することがおすすめです。ざっくりとした全体構成をこちらで学ぶことで次の一歩をより簡単に進むことが可能になるでしょう。

なぜ?がわかるデータベース


駆け出しのプログラマーがデータベース全般の基礎的な知識について学ぶための最初の一冊です。データベースを使ったアプリケーション開発の骨格を理解することができ、その全体像をつかむことが可能になります。こちらの一冊でエンジニアとして仕事をする上で役立つ基礎的な知識を身に着けることができます。

SQL 第2版 ゼロからはじめるデータベース操作


データベースやSQLが初めての人の初心者を対象に、プロのデータベースエンジニアである著者が丁寧に解説しております。テーブルの構造から、データを検索したり更新したりする構文、よく使う関数、テーブルの結合などSQLの基本を身につけたい方におすすめです。

まとめ

今回はSQLについての解説と代表的なデータベースの種類を解説しました。

これからの時代に書かせな技術の一つであるデータベースをこの機会にぜひ学習してみてはいかがでしょうか?