応用情報技術者過去問題 平成30年秋期 午後問6

問6 データベース

入室管理システムの設計に関する次の記述を読んで,設問1〜5に答えよ。

 H社は中堅の食品会社で,社内システムのデータベースの統合を検討している。現在,社内システムごとにデータベースのサーバを用意して運用しているが,関係データベース管理システム(以下,RDBMSという)のライセンスコストと運用コストを削減するために1台のサーバに統合し,各社内システムのデータベースは,統合したサーバのRDBMSでスキーマを分けて管理することになった。

〔社員情報の共用〕
 全ての社内システムは,社員IDや氏名などの社員情報を使用する。現在は,人事システムが管理している社員情報のマスタデータを月次処理で各社内システムに配布して運用しているが,最新の情報が反映されるのが翌月になること,月次処理の運用負荷が大きいことなどから改善が望まれている。今回,サーバを統合するに当たり,各社内システムにデータを配布するのではなく,人事システムが管理する社員情報に関連する実表を参照する方式に変更することを検討している。人事システムの社員情報に関連する実表を表1に示す。
pm06_1.gif/image-size:503×118
 セキュリティの観点から検討した結果,人事システム以外の社内システムから社員情報に関連する実表を直接参照するのではなく,社員情報を使用する社内システムごとに必要な列だけをビュー表として公開し,ビュー表を参照する方式を採用することに決定した。

〔入室管理システム〕
 会社内の特別な部屋の入退室管理を行う入室管理システムは,サーバ統合の対象となるシステムの一つである。入室管理システムで利用する主な実表とビュー表を表2に,E-R図を図1に,入室に関する主なユースケースを表3に示す。
pm06_2.gif/image-size:523×669
 表3のユースケース"入室"で,入室可否をチェックし,否の場合は0を,可の場合は1以上を返すSQL文を図2に示す。ここで,":社員ID"は指定された社員IDを格納する埋込み変数,":室ID"は指定された室IDを格納する埋込み変数,":今日"はSQL文実行時の現在日付を格納する埋込み変数である。また,ROOMは入室管理システムのスキーマ名で,表は"スキーマ名.表名"で表記する。
pm06_3.gif/image-size:509×95
〔各社内システムのRDBMSユーザ〕
 社内システムごとにデータベース管理者(以下,DBAという)が存在する。DBAは表の所有者であり,他のユーザに対して,自分が所有する表へのアクセス権限を付与することができる。DBAは,各社内システムのアプリケーションプログラム(以下,APという)が表のデータにアクセスすることができるようにAP用のユーザに対して,適切な権限を付与する。各社内システムのスキーマ名と,DBA用,AP用のRDBMSユーザ名を表4に示す。
pm06_4.gif/image-size:454×94
〔RDBMSの表のアクセス権限に関する主な仕様〕
 使用しているRDBMSの表のアクセス権限に関する主な仕様を(1),(2)に示す。
  • 表のデータに対して,所有者以外のユーザが参照,挿入,更新及び削除を行うためには,表に対して対応するアクセス権限(SELECT,INSERT,UPDATE及びDELETEの各権限)を所有者から付与してもらう必要がある。
  • ビュー表にアクセスする場合,そのビュー表が参照する表のアクセス権限は不要である。

〔入室管理システム用の社員ビ,ユー表〕
 表2のビュー表"入室管理用社員"を定義するSQL文を図3に示す。
pm06_5.gif/image-size:508×56
 このビュー表を入室管理システムのAPが参照だけできるように権限を付与するSQL文を図4に示す。
pm06_6.gif/image-size:509×48
〔入室申請時の確認の強化〕
 管理者は,"申請者が入室希望社員の組織長であること"を確認することになった。そのため,ビュー表"入室管理用社員"に組織長の氏名が必要となり,図5に示すSQL文に変更した。
pm06_7.gif/image-size:509×96

設問1

図1に適切なエンティティ間の関連を記入し,E-R図を完成させよ。図1の凡例に倣うこと。

-解答入力欄-

  • (図表で回答する問題のため解答入力欄はありません。)

-解答例・解答の要点-

  • pm06_8.gif/image-size:309×81

-解説-

この設問の解説はまだありません。

設問2

表2に示した実表"入室許可"における,主キーを答えよ。

-解答入力欄-

-解答例・解答の要点-

  • 社員ID,室ID,入室許可開始年月日

-解説-

この設問の解説はまだありません。

設問3

図2中のaに入れる適切な字句を答えよ。

-解答入力欄-

  • a:

-解答例・解答の要点-

  • a:COUNT(*)

-解説-

この設問の解説はまだありません。

設問4

ビュー表"入室管理用社員"について,(1),(2)に答えよ。
  • 図4中のbeに入れる適切な字句を答えよ。
    なお,表は"スキーマ名.表名"で表記すること。
  • ビュー表を参照する権限を付与するSQL文を実行するユーザ名を答えよ。

-解答入力欄-

    • b:
    • c:
    • d:
    • e:

-解答例・解答の要点-

    • b:GRANT
    • c:SELECT
    • d:HR.入室管理用社員
    • e:ROOM_AP
    • HR_DBA

-解説-

この設問の解説はまだありません。

設問5

図5中のfに入れる適切な式を答えよ。

-解答入力欄-

  • f:

-解答例・解答の要点-

  • f:T1.所属組織ID=T3.組織ID AND T3.組織長の社員ID=T2.社員ID

-解説-

この設問の解説はまだありません。
問6成績
【30年秋期 午後問題】
 問1 問2 問3 問4 問5 問6 問7 問8 問9 問10 問11
© 2010-2019 応用情報技術者試験ドットコム All Rights Reserved.

Pagetop