必ず受かる情報処理技術者試験

当サイトは、情報処理技術者試験に合格するためのWebサイトです。
ITパスポート試験,基本情報技術者,応用情報技術者,高度試験の過去問題と解答及び詳細な解説を掲載しています。
  1. トップページ
  2. データベーススペシャリスト
  3. 平成22年度春季問題
  4. 平成22年度春季解答・解説

平成22年度春季解答

問題1

図のような関係R(A,B)において、属性Aの定義域の要素は{a1,a2,a3}、属性Bの定義域の要素は{b1,b2}である。
a1とb1を結ぶ線は、(a1,b1)のように、関係Rの要素を表している。
この関係Rの要素を表す語として、適切なものはどれか。

属性
ドメイン

解答:ア

<解説>

問題へ

問題2

表の所有者が、SQL文のGRANTを用いて設定するアクセス権限の説明として、適切なものはどれか。

パスワードを設定してデータベースの接続を制限する。
ビューによって、データベースのアクセス処理を隠ぺいし、表を直接アクセスできないようにする。
表のデータを暗号化して、第三者がアクセスしてもデータの内容が分からないようにする。
表の利用者に対し、表の問い合わせ、更新、追加、削除などの操作を許可する。

解答:エ

<解説>

× データベース管理システム(DBMS)における利用者IDの役割である。
× CREATE VIEWによって定義される。
× データベース管理システム(DBMS)の機能として実装されているものが多いがSQLとは関係がない。
GRANTは、データベースの表やビューやストアドプロシージャなどのオブジェクトにアクセス権限などを付与するSQLである。

問題へ

問題3

表Rに、(A,B)の2列でユニークにする制約(UNIQUE制約)が定義されているとき、表Rに対するSQL文でこの制約違反となるのはどれか。 ここで、表Rは主キーの定義がなく、また、すべての列は値が決まっていない場合(NULL)もあるものとする。

DELETE FROM R WHERE A = 'AA01' AND B = 'BB02'
INSERT INTO R VALUES ( 'AA01', NULL, 'DD01', 'EE01' )
INSERT INTO R VALUES ( NULL, NULL, 'AA01', 'BB02' )
UPDATE R SET A = 'AA02' WHERE A = 'AA01'

解答:エ

<解説>

問題へ

問題4

関係データベース上に実装するエンティティの主キーが複合キーであり、複合キーを構成している属性数が多すぎるので、少なくして扱いしやすくしたい。この場合の対応として、適切なものはどれか。

複合キーを構成している属性のうち、エンティティの性格を最もよく表している属性を主キーとし、残りの属性を外部キーにする。
複合キーを構成している属性のうち、エンティティの性格を最もよく表している属性を主キーとし、残りの属性を代理キー(alternate key)にする。
複合キーを連番などの代用のキー(surrogate key)に置き換え、複合キーを構成している属性を外部キーにする。
複合キーを連番などの代用のキー(surrogate key)に置き換え、複合キーを構成している属性を代理キー(alternate key)にする。

解答:エ

<解説>

× 複合キーで行を一意に特定しているのだから、複合キーの一部の属性をとりだしても行を一意に特定できない。
× 複合キーで行を一意に特定しているのだから、複合キーの一部の属性をとりだしても行を一意に特定できない。
× 外部キーは、参照先の主キーである必要がある。複合キーを外部キーにできるとは限らない。
連番を付加して主キーにした後、以前の主キーは代替キーとして扱うことができる。

問題へ

問題5

“学生は、学期が異なれば同じ授業科目を何度でも履修できる”を適切に表現しているデータモデルはどれか。ここで、モデルの表記法にはUMLのクラス図を用いる。

解答:エ

<解説>

問題へ