SQLって付くもの多すぎ問題

SQLって付くもの多すぎ問題

みなさん、SQLって知っていますか?
まぁ、この記事に辿り着いた方はほぼ知っているでしょう。
では、標準SQLやMySQL、PL/SQLにもSQLと付いていますが
これらの違いは説明できますか?
初学者の多くはSQL関連の似たワードの整理が付かず、
混乱しているかと思います。
今回はそんな悩みを解消するための、初歩的でざっくりとした内容です。

SQL

データベースを操作するための言語
(データベースを操作する言語の総称、と言う方がイメージが掴みやすいかも?)
3種類のコマンド(命令)に分けられます。

DDL(定義):CREATEなど
DML(操作):INSERTなど
DCL(制御):GRANTなど

SQL文(クエリ)

SQLで書かれた命令文

MySQL、PostgreSQL、SQLServer、Oracle、SQLite

データベース管理システム
会話中でざっくりと「データベース」と呼ばれることも多いです。
それぞれSQLで操作しますが、使えるコマンドに差があったりします。

標準SQL

「どのデータベースもこんな感じのSQLが使えるようにしてほしいなぁ」
くらいの強制力の標準規格に準拠したSQL
標準規格はANSIやISOといった団体が決めています。
データベース側はこれを厳密に守る必要は無いので、
標準規格に沿ってクエリを作成しても、
データベースによっては実行できないこともあります。

PL/SQL

Oracleで使えるSQL
データベース毎に独自で拡張されたSQLが用意されており、
Oracleの拡張SQLにはPL/SQLという名前が付けられています。

終わりに

簡単な内容ですが初学者がパンクしないようここまで。
余裕が出てきたら個々の詳細を調べてみてください。

似た単語の違いはよく解説を書かれていますが、
まとめて整理しているページが少なく感じて今回記事にしました。
これからも初学者のつまずきポイントを解消して、
学習の助けになる記事を書いていこうと思います。