令和元年 秋期 基本情報技術者 午後 問03
問03 5問選択
書籍及び貸出情報を管理する関係データベースの設計及び運用に関する次の記述を読んで,設問1〜3に答えよ。 D社の部署である資料室は,業務に関連する書籍を所蔵しており,従業員への貸出しを 2015 年4月から実施している。 所蔵する書籍を管理するデータベースは,書籍の情報を管理する書籍情報表と貸出状況を管理する貸出表とで 構成されている。データベース構成を,図1に示す。下線付きの項目は主キーを表し, 下破線付きの項目は外部キーを表す。各書籍は1冊しか所蔵していない。
図 1 データベース構成 〔貸出表に関する説明〕 (1) 従業員に書籍を貸し出す際は,一意の貸出番号,貸し出す書籍の ISBN コード, 従業員番号,貸出日及び返却予定日を設定し,返却日には NULL を設定したレコードを追加する。 (2) 書籍が返却されたら,対象のレコードの返却日に返却された日付を設定する。
SELECT 貸出表.ISBNコード, CASE WHEN a END AS 書籍状態 FROM 貸出表 WHERE 貸出表.ISBNコード = 'ISBN978-4-9Ø5318-63-7' AND 貸出表.貸出日 = (SELECT b FROM 貸出表 WHERE 貸出表.ISBNコード = 'ISBN978-4-9Ø5318-63-7') UNION ALL SELECT DISTINCT 書籍情報表.ISBNコード, '貸出可' AS 書籍状態 FROM 書籍情報表 WHERE 書籍情報表.ISBNコード = 'ISBN978-4-9Ø5318-63-7' AND NOT EXISTS (SELECT 貸出表.ISBNコード FROM 貸出表 WHERE 貸出表.ISBNコード = 'ISBN978-4-9Ø5318-63-7' ) a に関する解答群
イ 貸出表.返却日 IS NOT NULL THEN '貸出中' ウ 貸出表.返却日 IS NULL THEN '貸出可' ELSE '貸出中'
エ 貸出表.返却日 IS NULL THEN '貸出中' b に関する解答群 ウ MIN(貸出表.貸出日) エ 貸出表.貸出日
SELECT 書籍情報表.ISBNコード,書籍情報表.書籍名,COUNT(*) AS 貸出回数
FROM 書籍情報表,貸出表
WHERE 書籍情報表.ISBNコード = 貸出表.ISBNコード
c
c に関する解答群 GROUP BY 書籍情報表.ISBNコード,書籍情報表.書籍名 HAVING COUNT(*) >= 4
イ AND 貸出表.貸出日 BETWEEN '2Ø18-Ø4-Ø1' AND '2Ø19-Ø331'
ウ AND 貸出表.貸出日 >= '2Ø18-Ø4Ø1' AND 貸出表.貸出日 <= '2Ø19-Ø3-31'
エ GROUP BY 書籍情報表.ISBNコード,書籍情報表.書籍名,貸出表.貸出日
〔従業員と資料室担当者からの要望〕 要望2 書籍の購入日を管理できるようにしたい。 要望3 ISBN コードごとに所蔵する書籍数及び貸出し中の書籍数(以下,貸出中件数という)が分かるようにしたい。 要望4 ISBN コードが同じ書籍は同じラックに保管して,書籍が収納されているラックが分かるようにしたい。 従業員と資料室担当者からの要望を反映したデータベース構成案を,図2に示す。 下線付きの項目は主キーを表し,下破線付きの項目は外部キーを表す。
図2 要望を反映したデータベース構成案 〔要望に対するデータベース修正内容〕 修正2 要望2に対応するために書籍表に購入日を設けた。 修正3 要望3に対応するために書籍管理ビューを追加した。 修正4 要望4に対応するためにラック表を追加して,書籍情報表に外部キーとしてラック番号を追加した。 また,需要がなくなった書籍を廃棄する場合は,ISBN コードが同じ書籍を全て廃棄する。 データベースに対して行う操作は,次の@〜Cを,e の順序で行う必要がある。
A 書籍表から対象 ISBN コードに対応する書籍番号を抽出する。 B 書籍表の対象 ISBN コードに対応するレコードを削除する。 C 貸出表の対象書籍番号に対応するレコードを削除する。 d に関する解答群 ウ 書籍情報表及び書籍表 エ 書籍情報表,書籍表及びラック表 e に関する解答群 エ A → B → C → @ オ A → C → @ → B カ A → C → B → @
[←前の問題] [次の問題→] [問題一覧表] [分野別] [基本情報技術者試験TOP ]
©2004-2024 情報処理試験.jp
|
プライバシーポリシー・著作権・リンク
|
お問合わせ
| ||||||