読み方 : ディーシーエル
DCL【Data Control Language】データ制御言語
概要

データベースでは複数の利用者やアプリケーションが同じデータを共有するため、利用者ごとに実行可能な操作を制限する必要がある。DCLはこうしたアクセス制御に用いられ、特定の利用者や利用者グループに対して、データの参照、追加、更新、削除などの権限を付与したり、既に与えた権限を取り消したりする。
データベース処理では複数の操作を一体不可分な一つの単位として扱う「トランザクション処理」が行われることがある。実行後に変更内容を正式に反映する処理や、障害や誤操作によって変更内容を取り消す処理にもDCLの機能が利用されることがあり、利用者管理だけでなくデータの整合性維持にも関係する。
リレーショナルデータベース管理システム(RDBMS)の標準的な操作言語である「SQL」では、権限を付与する「GRANT文」や権限を取り消す「REVOKE文」がDCLに分類される。トランザクションを確定する「COMMIT文」や、取り消す「ROLLBACK文」もDCLに含める場合がある。製品や文献によってはCOMMIT文やROLLBACK文をDCLから独立した区分として扱うこともあり、分類の仕方は必ずしも統一されていない。
データベース言語の構成要素には目的別にいくつかの種類がある。データの検索や登録、更新といったデータそのものの操作を行うものは「DML」(Data Manipulation Language)と呼ばれ、テーブルの作成や削除などデータベースの構造を定義・変更するものは「DDL」(Data Definition Language)と呼ばれる。これらがデータや構造を対象とするのに対し、DCLは利用者権限や処理状態の管理を対象としている。
(2026.6.26更新)