SQL基本(DDL/DML/DCL/TCL)とは?4分類の役割

公開: 更新: カテゴリ: テクノロジ系

30秒で結論

SQLとは(全体像)

SQLとは、関係データベース(RDB)を操作するための標準言語のことだ。データベースに「こうしてほしい」と伝える、指示の言葉だと思えばよい。

このSQLの命令は、役割によって、4つに分類される。

ここで一番のポイント。SQLは、SELECTだけではない。「SQLといえばSELECTだけ」と思い込むと誤りで、DDL・DML・DCL・TCLの4分類がある。


詳しく:4分類の役割

ここが心臓部。4分類を表で押さえよう。

SQLの4分類

分類役割代表的な命令
DDL構造を定義するCREATE・ALTER・DROP
DMLデータを操作するSELECT・INSERT・UPDATE・DELETE
DCL権限を制御するGRANT・REVOKE
TCLトランザクションを制御するCOMMIT・ROLLBACK

ふだんよく使うのは、データを取り出すSELECT(DML)だ。でも、それだけではない。表を作る(DDL)・権限を与える(DCL)・処理を確定する(TCL)など、役割ごとに命令が分かれている。

ここで注意。DCL(権限の制御)も大事だ。「DCLは要らない」と思い込むと誤りで、だれがデータを使えるかを決める、セキュリティ上、重要な役割だ。

わかりやすく言い換えると

身近なたとえで整理しよう。

SQLは、「データベースへの指示の言葉」のイメージ。役割で4つに分かれる。

4分類は、「箱(表)を作るDDL・中身を出し入れするDML・鍵(権限)のDCL・処理の確定や取り消しのTCL」こと。要するに、目的ごとに命令の種類が分かれている。

「SQL=SELECTではない」というのは、SELECT(DML)はよく使うが、SQLには4分類あるということ。つまり、SELECTだけではない。


試験のツボ

🔴 一番出る:4分類

①DDL(構造)・DML(データ)・DCL(権限)・TCL(トランザクション)

②SQLはSELECTだけではない(4分類ある)

🔴 次に出る:代表的な命令

①DDL=CREATE/ALTER/DROP、DML=SELECT/INSERT/UPDATE/DELETE

②DCL=GRANT/REVOKE、TCL=COMMIT/ROLLBACK

🟡 押さえると安定:DCLの重要性

①DCLは、だれが使えるかの権限を制御する

②セキュリティ上、重要な役割


よくある間違い

「SQLといえば、SELECTだけのことだ」→ ✗  SQLには、DDL・DML・DCL・TCLの4分類がある。SELECT(DML)はその一部。

「DCL(権限の制御)は、要らない分類だ」→ ✗  DCLは、だれがデータを使えるかを決める、セキュリティ上重要な役割。

「SQLは、関係データベース以外を操作する言語だ」→ ✗  SQLは、関係データベース(RDB)を操作するための標準言語。


試験での出題パターン

実際の問題でたしかめてみよう。

オリジナル問題1(SQLの正体)

📝 オリジナル問題 1 SQLの正体

SQLに関する次の記述のうち、最も適切なものはどれか。

  1. 社員の出退勤を記録して、毎月の給与を計算するためのしくみだ
  2. 取引先へ毎月の請求書を郵送する、決まった事務作業のことを指す
  3. 完成したシステムを宣伝して、より多く売るための広告活動である
  4. 関係データベースを操作するための、標準的な言語のことである
エーアイコアラ
エーアイコアラ 解答・解説

解答は 4 です。

SQLは、関係データベースを操作するための、標準言語なのです。データベースへの指示の言葉なります。

選択肢1は給与計算、選択肢2は請求書の事務、選択肢3は広告で、どれも違うのです。

選択肢判定理由
1給与計算のしくみではない
2請求書の事務の話
3広告活動ではない
4関係データベースを操作する標準言語で正しい

オリジナル問題2(4分類)

📝 オリジナル問題 2 SQLの4分類

SQLの分類に関する次の記述のうち、最も適切なものはどれか。

  1. DDL・DML・DCL・TCLという4つの種類に分かれている
  2. 社員の給与を計算するときだけ、分かれるとされているものである
  3. 取引先への請求書の枚数しだいで、分かれるとされているものだ
  4. SQLは、SELECTという1つの命令だけだとされているのである
エーアイコアラ
エーアイコアラ 解答・解説

解答は 1 です。

SQLは、DDL・DML・DCL・TCLの4つに分かれ、SELECTだけではないのです。役割ごとに命令が分かれているなります。

選択肢2の給与、選択肢3の請求書、選択肢4の「SELECTだけ」は、いずれも違うのです。

選択肢判定理由
14分類ありSELECTだけではないで正しい
2給与計算で分かれるのではない
3請求書の枚数で分かれるのではない
4SELECTだけではなく4分類ある

オリジナル問題3(各分類の役割)

📝 オリジナル問題 3 SQLの各分類の役割

SQLの各分類に関する次の記述のうち、最も適切なものはどれか。

  1. 社員の給与を計算するときだけ、役割が決まるとされているものだ
  2. 取引先への請求書の枚数しだいで、役割が決まるとされているのだ
  3. DDLは構造、DMLはデータ、DCLは権限、TCLは取引制御
  4. すべての分類が、データの取り出しだけを担うとされているのだ
エーアイコアラ
エーアイコアラ 解答・解説

解答は 3 です。

SQLは、DDLは構造、DMLはデータ、DCLは権限、TCLはトランザクションを担うのです。役割ごとに命令が分かれているなります。

選択肢1の給与、選択肢2の請求書、選択肢4の「取り出しだけ」は、いずれも違うのです。

選択肢判定理由
1給与計算で役割が決まるのではない
2請求書の枚数で決まるのではない
3DDL=構造・DML=データ等で正しい
4分類ごとに役割が違う

まとめ

押さえどころ

次に学ぶ


執筆: SikakuQuest編集部

勉強は、クエストになった。

資格の勉強を、冒険に変えるRPG学習アプリ

App Storeで見る