基本情報技術者 2015年 秋期 午前(科目A) 問25
問題文
DBMSにおいて、スキーマを決める機能はどれか。
選択肢
ア:機密保護機能
イ:障害回復機能
ウ:定義機能(正解)
エ:保全機能
DBMSにおいて、スキーマを決める機能はどれか【午前2 解説】
要点まとめ
- 結論:スキーマの生成・変更・削除などデータ構造を扱うのはDBMSの定義機能(DDL)であり、定義情報はデータディクショナリに格納されます。
- 根拠:スキーマは表や列、制約などの設計情報で、これを記述するのが定義機能であって操作や保全、回復の役割とは異なります。
- 差がつくポイント:定義機能とDML(操作機能)、機密保護や障害回復などの管理機能の役割を明確に区別して覚えることが速答の鍵です。
正解の理由
正解:ウ 定義機能
スキーマとは表や列、データ型、制約などデータベースの「構造(設計)」を表す情報です。DBMSではこの構造を定義・変更・削除する機能を定義機能(Data Definition)と呼び、具体的にはDDL(CREATE、ALTER、DROP など)によって操作されます。定義情報はカタログ/データディクショナリに保持され、スキーマの内容を管理します。したがって「スキーマを決める機能」は定義機能が該当します。
スキーマとは表や列、データ型、制約などデータベースの「構造(設計)」を表す情報です。DBMSではこの構造を定義・変更・削除する機能を定義機能(Data Definition)と呼び、具体的にはDDL(CREATE、ALTER、DROP など)によって操作されます。定義情報はカタログ/データディクショナリに保持され、スキーマの内容を管理します。したがって「スキーマを決める機能」は定義機能が該当します。
よくある誤解
- 「スキーマ=データ」の誤解:スキーマはデータそのもの(行やレコード)ではなく、データの構造・設計情報です。運用データはインスタンス(データ)と呼び区別します。
- 「スキーマ変更は操作(DML)で行える」と思う誤り:テーブルの内容変更はDML、テーブル定義変更はDDL(定義機能)です。
- 「保全機能や機密保護がスキーマに関係する」と考える誤解:これらはスキーマを守る管理機能であり、スキーマ自体を定義する役割ではありません。
解法ステップ
- 問題文のキーワード「スキーマ」を特定する。
- スキーマの意味を「データ構造(表・列・制約など)の定義情報」と正確に理解する。
- 各選択肢の役割を対応付ける(定義機能=DDL、操作機能=DML、機密保護=アクセス制御、障害回復=ログ・バックアップ)。
- スキーマを「決める(作成・変更)=定義機能」と結び付けて解答する。
選択肢別の誤答解説
- ア: 機密保護機能
説明:アクセス制御や認証、権限管理などデータの安全を確保する機能で、スキーマの「定義」を行うものではありません。スキーマ情報の保護には関与しますが、決定者ではありません。 - イ: 障害回復機能
説明:ログ管理やバックアップ・リカバリなど、障害時にデータを復旧する役割で、スキーマ設計や定義を行う機能ではありません。 - ウ: 定義機能(正解)
説明:スキーマの作成・変更・削除を行う機能で、DDLを通じてスキーマを決定しデータディクショナリに格納します。 - エ: 保全機能
説明:保全(integrity maintenance)はデータの一貫性や整合性を保証する機能を指すことが多く、制約のチェックなどは関与しますが、スキーマ自体の定義を行うのは定義機能です。保全機能は定義された制約を運用する側の役目と言えます。
補足コラム
- DDLの具体例:CREATE TABLE、ALTER TABLE、DROP TABLE、CREATE INDEX などは定義機能を使った典型的な操作です。
- データディクショナリ(カタログ):スキーマ、テーブル定義、制約、ユーザ情報などメタデータを保持する領域で、DBMSが定義情報を参照する際に使います。
- ANSI/SPARC の三層アーキテクチャ:外部スキーマ(ビュー)、概念スキーマ(論理)、内部スキーマ(物理)という考え方があり、「スキーマ」は主に概念スキーマや外部スキーマを指します。
例(DDLの簡単なサンプル):
CREATE TABLE employees ( emp_id INT PRIMARY KEY, name VARCHAR(100), department_id INT, hire_date DATE ); ALTER TABLE employees ADD COLUMN email VARCHAR(255);
FAQ
Q1: スキーマとデータベースの違いは何ですか?
A1: スキーマはデータの「構造(設計)」を表す定義情報、データベースはその構造に沿って格納された「実際のデータ(インスタンス)」やメタデータを含む総体です。
A1: スキーマはデータの「構造(設計)」を表す定義情報、データベースはその構造に沿って格納された「実際のデータ(インスタンス)」やメタデータを含む総体です。
Q2: スキーマ変更は運用中に可能ですか?
A2: 可能ですが注意が必要です。DDLはテーブル構造を変更し、既存データやアプリケーションに影響するため、事前検証や排他制御、メンテナンス窓口が必要です。
A2: 可能ですが注意が必要です。DDLはテーブル構造を変更し、既存データやアプリケーションに影響するため、事前検証や排他制御、メンテナンス窓口が必要です。
Q3: 定義機能と保全機能は重複しますか?
A3: 一部機能が関連しますが役割は異なります。定義機能は構造を作る/変える役目、保全機能は制約やトリガで整合性を保つ役目です。
A3: 一部機能が関連しますが役割は異なります。定義機能は構造を作る/変える役目、保全機能は制約やトリガで整合性を保つ役目です。
関連キーワード: スキーマ、DDL、データディクショナリ、DBMS機能、定義機能、DML、保全機能、障害回復、機密保護、ANSI/SPARC

\ せっかくなら /
基本情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

