Data Manipulation Language
データベースに対する命令の種類だよ
データを検索、登録、更新、削除するときに使う命令だよ
日本では「データ操作言語」や「DML」と表現されるのが一般的だよ
簡単に書くよ
Data Manipulation Language(読:データ・マニピュレーション・ランゲージ)とは
いわゆる「データ操作言語(DML)」のこと。
用語の中身としては
データベースに対する命令の分類のひとつ
であり
データを検索・登録・更新・削除するときに使う命令のこと
です。
詳しく書くよ
最初に留意事項です。
「データ操作言語」や「DML」と言われて「あぁ、アレのことね」と分かる方は最後まで読む必要ありません。
データ操作言語の英語表現が「Data Manipulation Language」です。
データ操作言語を「DML」と表現することがあります。
この「DML」が「Data Manipulation Language」の省略表現なのです。
※「Data Manipulation Language」を何となく日本語にすると「情報操作言語」となります。[詳細]
以上が「データ操作言語(DML)」の意味を知っている人向けの説明です。
「データ操作言語(DML)って何?美味しいの?」な人は、このまま読み進めてください。
用語の中身について説明します。

それでは、いってみましょう。
まずは予備知識として「データベース」と「SQL」について簡単に説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。
データベースは「データを入れておく箱」です。
突っ込んで考えると混乱するかもしれません。
何となくのフィーリングで理解してください。
SQLは「データベースと やり取りするときに使う言葉」です。
データベースにデータを入れるときは、データベースさんに「これを入れておいて」と命令します。
データベースからデータを取り出すときは、データベースさんに「こんなデータを取り出しておくれ」と命令します。
SQLは、そんな命令をするときに使う言葉です。
さて、このSQLを使った命令ですが、大きく分けて3つに分類できます。
それは
1.データをあれこれするときに使う命令
2.データを入れておく箱をあれこれするときに使う命令
3.データベースに対する権限周りをあれこれするときに使う命令
の3つです。
「1.データをあれこれするときに使う命令」はデータそのものに関する命令です。
「この条件に一致するデータを探して」「このデータを入れておけ」「このデータの この値を こっちの値に変えて」「このデータを削除して」のような命令をするときに使います。
「2.データを入れておく箱をあれこれするときに使う命令」はデータを入れておく箱に関する命令です。
「このデータが入る箱を作って」「この箱をもっと大きくして」「この箱は使わないから捨てちゃって」のような命令をするときに使います。
「3.データベースに対する権限周りをあれこれするときに使う命令」は使ってイイ人やダメな人を指定するときに使う命令です。
「ピヨ子さんには、この箱の中身は見せないで」「ピヨ太ママには見せていいけど、変更はさせないで」のような命令をするときに使います。
以上を踏まえて、この3種類の命令のうち
1.データをあれこれするときに使う命令
を指す呼び名が「Data Manipulation Language」です。
上でも書きましたが、一般的には「データ操作言語」や「DML」と表現されます。
※本ページでも以降は「データ操作言語」と表現します。
SQLで言えば
・select文
・insert文
・update文
・delete文
がデータ操作言語に相当します。
データベースに命令するときに使う言語はSQLだけでは ありません。
他にもあります……多分。
よって「データ操作言語」という用語はSQL専用では ありません。
データベースのデータをあれこれするときに使う命令(で使う言語)は、すべてデータ操作言語です。
とはいえ、この説明を書いている時点の状況では、データベースをあれこれするときはSQLを使うことが多いでしょう。
「データ操作言語はselect文とかinsert文とかのこと」と解釈しても、そこまで困ることはないと思います。
ちなみに
2.データを入れておく箱をあれこれするときに使う命令
は「データ定義言語(DDL)」と言います。
あと
3.データベースに対する権限周りをあれこれするときに使う命令
は「データ制御言語(DCL)」と言います。
気が向いたら、全部まとめて覚えてあげてください。
・データ操作言語(DML):データをあれこれ
・データ定義言語(DDL):箱をあれこれ
・データ制御言語(DCL):権限をあれこれ
です。
一言でまとめるよ
まぁ「Data Manipulation Language」って単語が出てきたら「データ操作言語
(データベースに対する「データをあれこれしなさい」な命令)のことなんだな~」と お考えください。
おまけ
■訳してみるよ
「data(データ)」の意味は「資料」とか「知識」とか「情報」とかです。
「manipulation(マニピュレーション)」の意味は「操作」とかです。
「language(ランゲージ)」の意味は「言語」とか「言葉」とかです。
何となく くっつけると
情報操作言語
となります。






