みなさん、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という名前が付けられています。
終わりに
簡単な内容ですが初学者がパンクしないようここまで。
余裕が出てきたら個々の詳細を調べてみてください。
似た単語の違いはよく解説を書かれていますが、
まとめて整理しているページが少なく感じて今回記事にしました。
これからも初学者のつまずきポイントを解消して、
学習の助けになる記事を書いていこうと思います。