DDLとは?初心者のデータベースの勉強

データベースの操作をする際に、引き継ぎでDDLと名前のついたファイルがいくつかありました。
DDLとはなんだろうと思ったので調べてみました。

DDLとは

DDLとは Data Definition Language の略で日本語にすると、「データ定義言語」と言います。
データ定義言語と日本語に訳したところで、ピンときませんが、SQLではデータ定義言語と分類されているコマンドがあります。主に表などを作成、変更、削除するコマンドを指します。

DDLの他にもDML( Data Manipulation Language)などもあります。SQLの規格に定められているため、細かい仕様は別ですが、OracleデータベースやPostgreSQLでDDLの概念が異なるということはありません。

DDLのコマンド一覧

コマンド
CREATEテーブルを作成するときに使われる。
CREATE TABLE テーブル名 ( ... )
DROPテーブルを削除するときに使われる。
DROP TABLE テーブル名
ALTER既存のテーブルの定義を変更するときに使われる。
ALTER TABLE テーブル名 ...
TRUNCATEテーブルのデータを全て削除(切り捨て)するときに使われる。
TRUNCATE TABLE テーブル名
RENAMEテーブル名を変更するときに使われる。
RENAME 古いテーブル名 TO 新しいテーブル名
COMMENTテーブルなどにコメントを追加するときに使われる
COMMENT ON TABLE ...

テーブルの定義に関連するコマンドが DDL (データ定義言語) に分類されているのがわかると思います。
主にテーブルを例として書いていますが、テーブル以外にもインデックスや関数、ビュー、ストアドプロシージャ、トリガーなどを作成したり削除、変更する際も同様です。

おわり

よく見てみると引き継ぎ時にもらったファイルはCREATE文が書かれていました。
DDLと書かれていたらCREATE文やDROP文などのSQLが書かれているのかなと連想できるのでわかりやすくなっていたんですね。ファイル名をつけるときに意識したいと思います。

SQL

Posted by Nakamoto