用語比較
DDLとDMLの違い
DDL(データ定義言語)は、テーブルなどデータベースの構造そのものを定義・変更するSQLの命令群です。DML(データ操作言語)は、データの検索・追加・更新・削除といったデータそのものの操作を行うSQLの命令群です。どちらもSQLの命令ですが、操作の対象が構造なのか中身のデータなのかで分かれます。
DS検定では、命令の名前を暗記するより先に、その命令が何を変えるのかを読みます。列名やデータ型を指定して表の構造を作る・変えるならDDL、既存の表に対して行を追加・検索・更新・削除するならDMLと、対象を日本語へ戻して判断します。
このページは、CREATE TABLEとINSERTを『どちらもテーブルを作る・操作する命令』とまとめて覚えてしまった人を対象にしています。CREATE TABLEは列名とデータ型などを指定して新しい表の構造を定義するデータ定義操作、INSERTは既存の表へ新しい行を追加するデータ操作という違いを起点に、DDLとDMLを分ける手順を固めます。
この記事の目次
この記事の根拠と出典
各セクションの見出しの下に、公式資料で確認した内容か編集部の整理かをラベルで示しています。 試験日・料金・申込条件・試験方式は変わることがあるため、申込前に公式サイトで確認してください。DS検定の一次情報確認日: 2026-10-02。
- 公式一次資料と照合した内容
- DDLとDMLの定義、CREATE TABLE・INSERTの位置付けはDS検定の登録factsと公式一次資料へ照合しています。
- 編集部が学習用に整理した内容
- 操作の対象が構造かデータかで選ぶ手順は編集部の学習上の整理です。
資格ごとの公式資料の一覧
結論
公式一次資料と照合:用語の定義は公式一次資料と照合しています。
DDL
テーブルなどデータベースの構造そのものを定義・変更する命令群。CREATE TABLEはその代表例で、列名とデータ型などを指定して新しい表の構造を定義する。
DML
データの検索・追加・更新・削除といったデータそのものの操作を行う命令群。INSERTはその代表例で、既存の表へ新しい行を追加する。
違いを表で確認
| 比較軸 | DDL | DML |
|---|---|---|
| 操作の対象 | テーブルなどデータベースの構造そのもの | テーブルの中に入っているデータそのもの |
| 代表的な命令 | CREATE TABLE(列名とデータ型などを指定して新しい表の構造を定義する) | INSERT(既存の表へ新しい行を追加する) |
| 何を作る・変えるか | 表の構造(列や型)を定義・変更する | 表の中身の行を検索・追加・更新・削除する |
| 設問で先に読む語 | 構造の定義、変更、列、データ型 | 検索、追加、更新、削除、行 |
公式一次資料と照合:DS検定: 2026-10-02に一次資料で確認一次資料の一覧を見る →
DS検定の学習に使う書籍(Amazon)
試験範囲を通して読むときの1冊です。読んだ章は、このサイトの章別問題で確かめられます。
どこで迷っているかを切り分ける
DDLとDMLを『どちらもテーブル操作』とまとめて覚える初学者
CREATE TABLEは列名とデータ型などを指定して新しい表の構造を定義するデータ定義操作、INSERTは既存の表へ新しい行を追加するデータ操作です。どちらもテーブルに関わる命令ですが、構造を作るのか、中身のデータを追加するのかで対象が異なります。
命令名だけで丸暗記しようとする人
命令名を語呂合わせで覚えるより先に、『テーブルという入れ物の形を変える命令か、その入れ物に入っているデータを操作する命令か』を確認してください。CREATE TABLEは入れ物の形を作る命令でDDL、INSERTはデータを入れる命令でDMLです。
検索・更新・削除も同じ理屈で判断したい再受験者
DMLは、データの検索・追加・更新・削除といったデータそのものの操作を行う命令群として整理されます。INSERT以外の命令が問われた場合も、テーブルの構造を変えるのか、中身のデータを操作するのかという同じ基準で確認してください。
具体例で使い分ける
編集部の整理
例 1
表の構造を新しく定義する
新しい表を作るために、列名とそれぞれのデータ型を指定して構造を定義する場面です。
- 操作の対象は、まだ存在しない表の構造そのものです。
- 列名とデータ型など、表の形を決める情報を指定しています。
- 既存の表に対してデータを追加・検索する操作ではありません。
結論: 表の構造を定義する操作なので、DDLに分類されるCREATE TABLEの説明です。
例 2
既存の表へ新しい行を追加する
既に構造が定義された表に対して、新しい行のデータを追加する場面です。
- 操作の対象は、表の構造ではなく、表の中に入る行のデータです。
- 表そのものはすでに存在しており、その中身へ新しい行を加えています。
- 列名やデータ型を指定して構造を作る操作ではありません。
結論: 既存の表へデータを追加する操作なので、DMLに分類されるINSERTの説明です。
例 3
格納済みのデータを検索・更新・削除する
表の構造はそのままに、格納されているデータを検索したり、内容を更新・削除したりする場面です。
- 操作の対象は表の構造ではなく、格納されているデータそのものです。
- データの検索・追加・更新・削除は、DMLがまとめて担う操作として整理されます。
- 列やデータ型を新しく定義・変更する操作ではありません。
結論: データそのものを検索・更新・削除する操作なので、DMLとして整理します。
問題文から答えを選ぶ手順
編集部の整理:操作の対象が構造かデータかで選ぶ手順は編集部の学習上の整理です。
- 1
操作の対象を確認する
表の構造(列やデータ型)を対象にしているか、表の中のデータを対象にしているかを確認します。
- 2
代表例と照らす
列名とデータ型などを指定して新しい表の構造を定義するならCREATE TABLE(DDL)、既存の表へ新しい行を追加するならINSERT(DML)です。
- 3
検索・更新・削除も同じ基準で見る
データの検索・追加・更新・削除といった、データそのものを操作する命令はDMLとして整理します。表の構造を定義・変更する命令とは対象が異なります。
- 4
テーブルという語だけで即断しない
『テーブル』という語が出てもDDLとは限りません。テーブルの構造を作る・変える話ならDDL、テーブルの中身のデータを操作する話ならDMLです。
試験での見分け方
編集部の整理
- 1列名やデータ型などを指定して表の構造を定義・変更するならDDL。
- 2検索・追加・更新・削除といったデータそのものを操作するならDML。
- 3CREATE TABLEは表の構造を定義するのでDDL。
- 4INSERTは既存の表へ行を追加するのでDML。
- 5『テーブル』という語だけで判断せず、構造を扱うのかデータを扱うのかを確認する。
誤答しやすい選択肢
DDLとDMLを同じ『テーブル操作』として覚える
修正: DDLは表の構造、DMLは表の中身のデータという、操作の対象の違いを確認します。
CREATE TABLEをデータの追加操作だと思う
修正: CREATE TABLEは列名とデータ型などを指定して新しい表の構造を定義するデータ定義操作です。データの追加はINSERTの役割です。
INSERTを表の構造を作る操作だと思う
修正: INSERTは既存の表へ新しい行を追加するデータ操作です。表の構造はすでに定義されている前提です。
検索・更新・削除も構造の変更だと混同する
修正: 検索・追加・更新・削除はいずれもデータそのものの操作としてDMLに整理されます。表の構造を定義・変更する操作とは区別します。
確認問題
Q1列名とデータ型などを指定して新しい表の構造を定義する操作は?
答え: CREATE TABLE(DDL)
操作の対象が表の構造そのものである点が手掛かりです。データの検索・追加・更新・削除を行うDMLとは対象が異なります。
Q2既存の表へ新しい行を追加する操作は?
答え: INSERT(DML)
操作の対象が表の中のデータである点が手掛かりです。表の構造を定義・変更するDDLとは対象が異なります。
Q3データの検索・追加・更新・削除といったデータそのものの操作を行う命令群の名称は?
答え: DML
テーブルの構造を定義・変更するDDLとは、操作の対象が異なります。
到達チェック
- DDLを『表の構造を定義・変更する命令群』として説明できる
- DMLを『データの検索・追加・更新・削除を行う命令群』として説明できる
- CREATE TABLEをDDLの代表例として説明できる
- INSERTをDMLの代表例として説明できる
- 『テーブル』という語だけで判断せず、構造かデータかを確認できる
関連ページで確認する
- SQL・データベース用語をまとめて確認JOIN、UNION、GROUP BY、正規化など、第6章・第7章の用語を一覧で整理する。
- DDLを個別に確認表の構造そのものを定義・変更する命令群の定義を短く復習する。
- DMLを個別に確認データの検索・追加・更新・削除を行う命令群の定義を確認する。
- プログラミング・AI運用の章を解くSQL、プログラミング、セキュリティ、AI運用を収録問題で確認する。
- DS検定の勉強法第7章を含む学習順と、問題演習の回し方を決める。
- DS検定の記事一覧受験判断、学習、復習、比較の記事から次に読むものを選ぶ。
- ホワイトボックステストとブラックボックステストの違い同じ第7章のプログラミング・AI運用として、テストケースの起点を区別する視点もあわせて確認する。
- DS検定の問題演習8章を横断して問題を解き、取り違えた分野へ戻る。
同じ資格で次に知りたいこと
- データファブリックとデータメッシュの違い
データファブリックとデータメッシュの違いを、技術基盤の整備か組織の運用体制の変革か、データマート・DWHとの関係、DS検定の判断手順と確認問題まで解説します。
- 内部結合と外部結合の違い
内部結合(INNER JOIN)と外部結合(LEFT OUTER JOIN)の違いを、結合条件に一致しない行の扱い、表の行数を実際に数える例、DS検定での判断手順と確認問題まで解説します。
- 構造化データと非構造化データの違い|データの種類と扱い方をDS検定のスキルチェックリストで判断する
構造化データ(顧客・商品・在庫など)と非構造化データ(雑多なテキスト・音声・画像・動画)の違いを、DS検定の元になるスキルチェックリストの記述、ER図・正規化との関係、OCRなどによる構造化データへの変換、確認問題つきで整理します。
よくある質問
QDDLとDMLはどちらもSQLの命令?
はい。どちらもSQLの命令ですが、DDLは表の構造そのものを定義・変更し、DMLはデータの検索・追加・更新・削除を行うという対象の違いがあります。
QCREATE TABLEとINSERTはどう違う?
CREATE TABLEは列名とデータ型などを指定して新しい表の構造を定義するデータ定義操作、INSERTは既存の表へ新しい行を追加するデータ操作です。
Q検索・更新・削除もDML?
はい。データの検索・追加・更新・削除といったデータそのものの操作を行う命令群としてDMLに整理されます。
Q試験ではどちらを先に確認する?
命令が変える対象が表の構造なのか、表の中のデータなのかを先に確認します。表の構造を変えるならDDL、表の中のデータを操作するならDMLです。
次に見る比較
- G検定・DS検定・統計検定2級で重なる用語10語の比較
同じ名前の用語の定義と収録章を、資格ごとに並べます。
- ベイズの定理と条件付き確率の違い(統計検定2級の式と計算例)
求める確率の向きの違いと、陽性になる確率の計算例を確かめます。
- 紛らわしい用語ペア早見表
混同しやすい用語の違いと判定の手掛かりを、資格別の一覧で確かめます。
執筆: ミナト編集部(運営者情報を見る)
