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

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

平成20年度春季解答

問題56

属性xの値によって属性yの値が一意に定まることを, で表す。図に示される関係を,第3正規形の表として正しく定義しているものはどれか。ここで, の四角内に複数の属性が入っているものは,それら複数の属性すべての値によって,属性yの値が一意に定まることを示す。

表1 {a} 表2 {b, c, d, e} 表3 {f, g, h}
表1 {a, b, c, d, e} 表2 {a, c} 表3 {b, e, f, g, h}
表1 {a, b, c, d, e} 表2 {b, c, f, g, h} 表3 {b, c, h}
表1 {a, b, c, d, e} 表2 {b, f, g} 表3 {b, c, h}

解答:エ

<解説>

属性aによって値が決まるものは、 b,c,d,e である。よって{a,b,c,d,e}となる。
属性bによって値が決まるものは、 f,g である。よって{b, f, g}となる。
属性b,cによって値が決まるものは、 h である。よって{b, c, h}となる。

問題へ

問題57

"診療科"表,"医師"表及び"患者"表がある。患者がどの医師の診察も受けることができ,かつ診察する医師の特定もできる"診察"表はどれか。ここで,表定義中の実線は主キーを,破線は外部キーを示す。

解答:ア

<解説>

 
× 医師と診療科とのリレーションはある。しかし、患者とのリレーションがない
× 医師と診療科とのリレーションはある。しかし、患者とのリレーションがない
× 診察する診療科の医師の特定はできる。しかし、患者が受診する診療科に所属する医師の診察しか受けられない

問題へ

問題58

“社員"表から,職務がプログラマである社員が5人未満の部署の部署コードを探す SQL 文として,適切なものはどれか。ここで,“社員"表は次の構造であり,各列にはナル値は含まれないものとする。
社員 ( 社員番号, 社員名, 部署コード, 職務)

SELECT DISTINCT 部署コード FROM 社員 S1    
   WHERE 5 > (SELECT COUNT(S2.社員番号) FROM 社員 S2
        WHERE S1.部署コード = S2.部署コード
        AND S2.職務 = 'プログラマ')
SELECT DISTINCT 部署コード FROM 社員 S1
   WHERE 5 < (SELECT COUNT(S2.社員番号) FROM 社員 S2
        WHERE S1.部署コード = S2.部署コード
        AND S2.職務
SELECT DISTINCT 部署コード FROM 社員 S1
   WHERE EXISTS (SELECT * FROM 社員 S2
         WHERE S1.部署コード = S2.部署コード
         AND S2.職務 = 'プログラマ')
    GR0UP BY S1.部署コード HAVING COUNT(*) < 5
SELECT DISTINCT 部署コード FROM 社員 S1
   WHERE S1.部署コード IN (SELECT S2.部署コード FROM 社員 S2
         WHERE S1.部署コード = S2.部署コード
         AND S2.職務 = 'プログラマ'
         GR0UP BY S1.部署コード HAVING COUNT(*) < 5 )

解答:ア

<解説>

 
× 職務がプログラマでない社員が5人を超える部署の部署コードが出力される。
× 職務がプログラマでない社員が1人でもいる部署が副問合せで取り出され,その部署全体の人数が5人未満の部署の部署コードが出力される。
× 副検索文の中の表S1とS2に関する部署コードの結合条件が誤っているので文法的にエラーとなる。

問題へ

問題59

表は,ジョブ1~3が資源 A ~ C にかけるロックの種別を表す。また,資源へのロックはジョブの起動と同時にかけられる。ジョブ1~3のうち二つのジョブをほぼ同時に起動した場合の動きについて,適切な記述はどれか。ここで,表中の“-”はロックなし,“S”は共有ロック,“X”は占有ロックを示す。

ジョブ1の後にジョブ3を起動したとき,ジョブ3の資源待ちはない。
ジョブ2の後にジョブ1を起動したとき,ジョブ1の資源待ちはない。
ジョブ2の後にジョブ3を起動したとき,ジョブ3の資源待ちはない。
ジョブ3の後にジョブ1を起動したとき,ジョブ1の資源待ちはない。

解答:イ

<解説>

× ジョブ1により共有ロックされた資源Aに対して、ジョブ3は占有ロックできない。資源待ちが発生する。
ジョブ2により共有ロックされた資源Aに対して、ジョブ1は共有ロックは可能である。資源待ちはない。
× ジョブ2より共有ロックされた資源Aに対して、ジョブ3は占有ロックできないので資源待ちが発生する。さらにジョブ2により占有ロックされた資源Bに対して、ジョブ3は共有ロックが許可されないので、デッドロック状態になる。資源待ちが発生する。
× ジョブ3により占有ロックされた資源Aに対して、ジョブ1は共有ロックが許可されない。資源待ちが発生する。

問題へ

問題60

データベースの回復処理に関する記述として,適切なものはどれか。

ウォームスタート方式の再始動では,チェックポイントまで戻り,更新情報のログを使用してデータベースを回復する。
更新情報のログを見て,チェックポイントから後に正常終了したトランザクションの情報をデータベースに反映する操作を,ロールバックという。
コールドスタート方式の再始動では,チェックポイントでのログと更新情報のログが使用される。
障害発生時に終了していないトランザクションを更新前の状態に戻す操作をロールフォワードという。

解答:ア

<解説>

ウォームスタートとは、チェックポイントに戻り,ジャーナルの更新情報のログを用いてデータベースを復旧し,チェックポイントから実行を再開する方式である。
× 更新情報のログを見て、チェックポイントから後に正常終了したトランザクションの情報をデータベースに反映する操作を、ロールフォワードという。
× コールドスタート方式の再始動では、バックアップファイルが使用される。
× 障害発生時に終了していないトランザクションを更新前の状態に戻す操作を、ロールバックという

問題へ