データベースの操作をする際に、引き継ぎでDDLと名前のついたファイルがいくつかありました。
DDLとはなんだろうと思ったので調べてみました。
Contents
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が書かれているのかなと連想できるのでわかりやすくなっていたんですね。ファイル名をつけるときに意識したいと思います。
