データベースの基礎
SQLの文は、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)に分けられる。DDLに分類されるものはどれか。
- AUPDATE 社員 SET 部署 = '開発' WHERE 社員番号 = 5
- BCREATE TABLE 部署 (部署ID INTEGER PRIMARY KEY, 部署名 CHAR(10))
- CGRANT SELECT ON 社員 TO 田中
答えと解説を見る
正解:B. CREATE TABLE 部署 (部署ID INTEGER PRIMARY KEY, 部署名 CHAR(10))
DDL(Data Definition Language)は、表やビュー、インデックスといったデータベースの構造を定義する文で、CREATE、ALTER、DROPがあります。DML(Data Manipulation Language)は、表の中のデータを扱う文で、SELECT、INSERT、UPDATE、DELETEがあります。DCL(Data Control Language)は、権限などを制御する文で、利用者に権限を与えるGRANT、権限を取り消すREVOKEがあります。トランザクションを確定するCOMMITや取り消すROLLBACKは、DCLに含めることも、トランザクション制御文として別に分けることもあります。選択肢のうち、表を作るCREATE TABLEがDDLです。
- A. UPDATEは表の中のデータを書き換える文なので、DMLです。
- B. 正しい。表の構造を定義するCREATE TABLEはDDLです。
- C. GRANTは利用者に権限を与える文なので、DCLです。