Data Definition Language(DDL)とData Manipulation Language(DML)は一緒にデータベース言語を形成します。 DDLとDMLの基本的な違いは、DDL(Data Definition Language)がデータベーススキーマのデータベース構造を指定するために使われることです。 以下に示す比較表を用いて、DDLとDMLの違いについて説明します。 DBMS における DDL 対 DML
- 比較表
- 定義
- 主要な違い
- 結論
比較表
比較の根拠 | DDL | DML |
---|---|---|
基本 | DDLはデータベーススキーマを作るために使用されます。 | DML はデータベースの入力と操作に使用されます |
フルフォーム | Data Definition Language | Data Manipulation Language |
Classification | DDLはさらに分類はされません。 | DML はさらに手続き型と非手続き型に分類されます。 |
コマンド | CREATE, ALTER, DROP, TRUNCATE AND COMMENT, RENAMEなどです。 | SELECT、INSERT、UPDATE、DELETE、MERGE、CALLなど |
DDL (Data Definition Language)
DDL とは Data Definition Language のことで、データ定義言語の略です。 データ定義言語は、データベース構造またはデータベーススキーマを定義します。 DDLはまた、属性のドメインとして、データベースで定義されたデータの追加のプロパティを定義する。
- CREATEは、新しいデータベースまたはテーブルを作成するために使用されるコマンドです。
- DROP は、データベースまたはテーブルの一部のコンテンツを削除するために使用します。
- TRUNCATE は、テーブルからすべてのコンテンツを削除します。
- RENAME は、データベース内のコンテンツ名を変更します。 他のプログラミング言語と同様に、DDLはコマンドを受け付け、データ辞書(メタデータ)に格納された出力を生成します。
DML(Data Manipulation Language)の定義
DML は Data Manipulation Language の略称です。 DDL(Data Definition Language)で作成されたスキーマ(テーブル)に、DML(Data Manipulation Language)を使ってデータを入力したり埋めたりする。 DDLはテーブルの行を埋めるが、各行はタプルと呼ばれる。 DMLを使用すると、挿入、変更、削除、およびテーブルから情報を取得することができます。
手続き的DMLと宣言的DMLは、2つのタイプのDMLです。 手続き型DMLは、どのようなデータを取得するか、また、そのデータをどのように取得するかを記述する。 一方、宣言型DMLは、どのようなデータが取得されるかを記述するだけです。 そのデータをどのように取得するかは記述しません。
DMLで使用されるコマンドは次のとおりです。
- SELECTは、テーブルからデータを取得するために使用します。
- UPDATE はテーブルのデータを修正するのに使います。
- DELETE はテーブルからデータを削除するのに使います。
SQLについて話すなら、SQLのDML部分は非手続き的、すなわち宣言的DMLであります。
Key Differences Between DDL and DML in DBMS
- DDLとDMLの基本的な違いは、DDL(データ定義言語)はデータベースのスキーマや構造を定義するために使われ、つまりテーブル(関係)を作るために使われ、DML(データ操作言語)はアクセスやデータ操作に使われるということです。 DDLで作成されたスキーマやテーブルを変更することができる
- DML は手続き型と宣言型の2種類に分類されるが、DDLはさらに分類されることはない。
- CREATE、ALTER、DROP、TRUNCATE、COMMENT、RENAMEなどがDDLのコマンドである。
結論
データベース言語を形成するためには、DDLとDMLの両方が必要である。 データベースを構築し、アクセスするためには、この両方が必要になるからです。