データベースの基礎

SQLの文は、データ定義言語(DDL)、データ操作言語(DML)、データ制御言語(DCL)に分けられる。DDLに分類されるものはどれか。

  1. AUPDATE 社員 SET 部署 = '開発' WHERE 社員番号 = 5
  2. BCREATE TABLE 部署 (部署ID INTEGER PRIMARY KEY, 部署名 CHAR(10))
  3. 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です。
この分野を解く 分野ページへ

関連する計算ツール

データベースの基礎の参考書を探す PR

Amazonの検索結果へのリンクです。Amazonのアソシエイトとして、半導体教室は適格販売により収入を得ています。

データベースの基礎のほかの問題

  1. 商品表に、(商品名, 価格)が(ペン, 120)、(ノート, 250)、(消しゴム, 80)、(ファイル, 300)、(定規, 150)の5行がある。SELECT 商品名 FROM 商品 WHERE 価格 >= 150 ORDER BY 価格 DESC の結果として、返される行を順に並べたものはどれか。
  2. 社員表の部署の列に、上の行から順に 営業、開発、営業、総務、開発、営業 の値が入っている(全6行)。SELECT DISTINCT 部署 FROM 社員 の結果は何行になるか。
  3. SQLで DELETE FROM 社員 を、WHERE句を付けずに実行したときの結果として正しいものはどれか。
  4. 試験表の点数の列に、80、NULL、70、90 の4つの値がある(NULLは未受験を表す)。SELECT AVG(点数) FROM 試験 の結果はどれか。
  5. 成績表の点数の列に、50、NULL、70、NULL、90、30 の6つの値がある。SELECT COUNT(*), COUNT(点数), AVG(点数) FROM 成績 の結果を順に並べたものはどれか。