SQLとは
SQL(エスキューエル)は、1976年に登場した言語です。SQL自体は、プログラミング言語ではありません。データベースの操作に特化したデータベース問い合わせ言語であり、プログラミング言語と組み合わせて利用します。
SQLは、リレーショナルデータベースマネジメントシステム(RDBMS)に問い合わせる際に利用します。RDBMSとしては、Oracle Database、Microsoft SQL Server、IBM DB2、MySQL、PostgreSQLなどが良く知られています。これらのデータベースに問い合わせる際に利用するのがSQL言語です。
SQL(エスキューエル)は、1976年にIBM社によって開発され、その後、1987年に標準規格が制定されました。SQLが最初に開発されてから標準規格が制定されるまでに長い時間が経過していたことなどから、RDBMSごとにSQLへの独自拡張が行われていることがあります。
SQLという名称は「Structured Query Language(構造化照会言語)」の頭文字を取ったものとされることがあります。確かに、いくつかのRDBMSの仕様ではこのように定められていますが、標準SQLの仕様では「SQLは、何かの略語ではない」とされています。
SQL の特徴
SQLには、以下の特徴があります。
- プログラミング言語ではなく、データベース問い合わせ言語
- データベース操作の際に、プログラミング言語と組み合わせて利用する
- RDBMSの種類ごとにSQLへの独自拡張が行われていることがある
- SQLの文法は、データ定義、データ操作、データ制御に分類される
SQLは、プログラミング言語ではなく、データベース問い合わせ言語です。データベース操作の際に、プログラミング言語と組み合わせて利用します。
SQLは、リレーショナルデータベースマネジメントシステム(RDBMS)に問い合わせる際に利用しますが、RDBMSの種類ごとにSQLへの独自拡張が行われていることがあります。
SQLのコマンドは、以下のようにデータ定義、データ操作、データ制御に分類するこことができます。データ定義はデータベースやテーブルの作成・削除など、データ操作はデータの挿入・更新など、データ制御はデータへのアクセス権限など、です。
- データ定義 …… CREATE・DROP・ALTER
- データ操作 …… INSERT・UPDATE・DELETE・SELECT
- データ制御 …… GRANT・REVOKE など
SQLはこんな場面で使われている
SQLは、データベースと連携したシステムやウェブアプリケーションなどを開発する際に利用されます。
例えば、MySQLとPHPを連携させてウェブアプリケーションを開発するなら、PHPのプログラムソース中にSQL言語を記述して、MySQLのデータベースを操作することになります。
SQLを学ぶメリット
SQLは、データベースを絡めたシステムやウェブアプリケーションなどを開発するなら、必ず必要となる知識です。どのようなプログラミング言語を使うとしても、必要に応じてSQLを学ぶことになるでしょう。
開発する案件がどのRDBMSを利用するかによって、SQLの記述が若干異なることがあるかもしれません。学び方としては、どのRDBMSを使いたいかによって、そのRDBMSの解説書を読むか、必要に応じてそのRDBMSの仕様を参照するのが一般的と思われます。