データベースの基礎

関係データベースのビューの説明として、正しいものはどれか。

  1. ASELECT文で定義した仮想的な表で、ふつうは自分ではデータを持たず、参照するたびに元の表から結果を作る
  2. B元の表のデータを複製して保存する表で、元の表を変更してもビューの内容は変わらない
  3. C表の特定の列の値を速く探すために作る、木構造のデータである
答えと解説を見る

正解:A. SELECT文で定義した仮想的な表で、ふつうは自分ではデータを持たず、参照するたびに元の表から結果を作る

ビューは、CREATE VIEW 営業部員 AS SELECT 社員番号, 氏名 FROM 社員 WHERE 部署 = '営業' のように、SELECT文に名前を付けて定義する仮想的な表(仮想表)です。ふつうのビューは自分ではデータを持たず、ビューを参照するたびに元の表(基底表)から結果が作られるので、元の表を更新するとビューの内容にもそのまま反映されます。よく使う複雑な問い合わせを簡単に書けるようにしたり、見せてよい列や行だけをビューにして利用者に権限を与え、アクセスできる範囲を絞ったりするのに使います。一方、結果をあらかじめ計算して保存しておくマテリアライズドビューもあり、読み出しは速くなりますが、元の表に合わせて内容を更新する必要があります。値を速く探すための木構造は、インデックスの説明です。

  • A. 正しい。ビューはSELECT文で定義した仮想表で、元の表の変更がそのまま反映されます。
  • B. ふつうのビューはデータを複製しないので、元の表の変更が反映されます。結果を保存するマテリアライズドビューも、元の表に合わせて更新します。
  • C. これはインデックスの説明です。
この分野を解く 分野ページへ

関連する計算ツール

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

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

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

  1. 関係データベースの表を正規化する主な目的はどれか。
  2. 受注表(受注番号, 商品番号, 数量, 顧客番号, 顧客名)の主キーは{受注番号, 商品番号}で、関数従属は {受注番号, 商品番号} → 数量、受注番号 → 顧客番号、顧客番号 → 顧客名 である。この表を第3正規形まで正規化した結果として正しいものはどれか。
  3. 社員表(社員番号, 氏名, 部署コード, 部署名)の主キーは社員番号で、どの列も1つの値だけを持つ。関数従属は 社員番号 → 氏名、社員番号 → 部署コード、部署コード → 部署名 である。この表の正規形として正しいものはどれか。
  4. 読み出しが大部分を占める集計用のデータベースで、正規化した表をあえて1つにまとめ、同じデータを重複して持たせる設計(非正規化)を行うことがある。この設計の長所と短所の組み合わせとして正しいものはどれか。
  5. E-R図で、学生と科目の間に「1人の学生は複数の科目を履修し、1つの科目は複数の学生が履修する」という多対多の関係がある。この関係を関係データベースの表で実現する方法として、適切なものはどれか。