HOME»応用情報技術者試験掲示板»DB問題  図4
投稿する

DB問題  図4 [0468]

 あつみんさん(No.1) 
問6(DB問題)  図4

直接解答とは関係ない話なんですが、問6の図4について疑問があるので、
どなたが、おしえてもらえないでしょうか?
よろしくお願いします。

<<疑問>>
      【所属】と【部署】間に引かれている【多対多】の線の意味がわかりません。

<<知りたい事>>
      Q1.具体的にどの属性間で線が引かれているのか?
              ※:所属の属性をX1  と  部署の属性Y1とした時のX1とY1
      Q2.なんで多対多になるのか?
      Q3.DBで【多対多】は表現できないはずではないのか?
              ※:未完成DBという事なのか?
      Q4.【多対多】のE-R図を試験の問題の設問にするのはおかしくないか?
              ※:ここの部分から考えはじめると解答できなくなるのでは。
      
      以上、よろしくお願いします。
2015.10.31 13:13
問6で失敗した男さん(No.2) 
私も同じように
【所属】と【部署】間に引かれている【多対多】の線の意味がわかりません。

あってるかどうかわからないのですが、
多対多 を  1→多【連関エンティティ】多←1  に置き換えてみる
この場合、

所属表  →所属・部署【部署ID(主キー),社員ID(主キー)】←部署表
にして置き換えてみました

勝手に所属・部署(表)としてみましたが、
自信がないです
それと、1→多、多←1なので、
部署ID(主キー),社員ID(主キー)
ぐらいの属性しか見当たらないです(んーー)

さらに、もう一つリレーションが必要?
所属表【所属部署ID(外部キー)】←  部署表【部署ID(主キー)】

なので、
所属表  →  (連関エンティティ)  ←  部署表
所属表  ←  部署表  ?
となりました

でも、ぜんぜん自信がないので
参考になるかどうか?
なにせ、問6で失敗した者ですから





2015.11.01 08:53
 あつみんさん(No.3) 
レスありがとうございます。
(お名前が、失礼すぎて私には書けません。。)


所属・部署【部署ID(主キー),社員ID(主キー)】の関連エンティティーを作る
というのは定石どおりの正当な考え方だと思います。

と言う事は、もとの図に戻すと、【部署ID】と【社員ID】間で多対多になっているって事
です。
本当にそうなのか、よくわかりません。
少し気になるのは、適応開始年月日が関係しているのか?なと言うことです。

【社員表】の【適応開始年月日】は、社員の入社と部署移動(と退職)の時発生します。
【部署表】の【適応開始年月日】は、部署の新設と組織変更(と部署の廃止)の時発生します。

ここでなんか、多対多になっている気がしますが、もう思考の限界でギブアップです。

だれか、わかる人解説お願いします。


2015.11.02 10:14
げねごすさん(No.4) 
Q1.具体的にどの属性間で線が引かれているのか?
              ※:所属の属性をX1  と  部署の属性Y1とした時のX1とY1
→個人的には、テーブル「所属」の主キーが「社員ID,適用開始日」(ただし外部キーも兼ねる)、外部キーが「部署ID」だろうかと考えてみました。テーブル「所属」単体で、連関エンティティの主キー構成に必要な属性の組を網羅できてしまうので、新たに連関エンティティを作る必要がなく【多対多】のリレーションシップが残存したというレアケースかもしれません。

Q2.なんで多対多になるのか?
→【多対多】は実際あまり好ましくありません。しかしER図で決して使用できないわけでもありませんので、設問の注意書きを良く理解したうえで適切な表記を判断してください。
テーブル「所属」の主キー「社員ID,適用開始日」は、テーブル「部署」に同一のものが複数存在できます(同一日付で複数の部署長を兼任する場合です)。
テーブル「部署」の主キー「部署ID,適用開始日」は、テーブル「所属」に同一のものが複数存在できます(同一の日付で複数の社員が同じ部署に転入した場合です)。

Q3.DBで【多対多】は表現できないはずではないのか?
              ※:未完成DBという事なのか?
→Q2での回答と同様ですが、作成途中の未完成ER図では頻繁に目にします。「未完成なのだろう」という着眼点はよい線だと思います。今回はややレアケースかと存じます。

Q4.【多対多】のE-R図を試験の問題の設問にするのはおかしくないか?
              ※:ここの部分から考えはじめると解答できなくなるのでは。
→【多対多】を連関エンティティに分解する、という意図の設問は出題されてもおかしくありません。
ただ今回のような図はAP区分では珍しいという所見は同感です。特に空欄でもないので、実際の試験ではあまりこだわらない方が時間を節約できると存じます。

おまけ:
どうしても【多対多】を排除したいのであれば、既存のテーブルを分割できないか考えてみてください。ただし、そこまで考えるのは明らかに専門領域です。AP区分に合格してからでも遅くはありません。

皆さんの合格をお祈り申し上げます。
2015.12.10 18:08

返信投稿用フォーム

スパム防止のためにスレッド作成日から30日経過したスレッドへの書込みはできません。
© 2010-2024 応用情報技術者試験ドットコム All Rights Reserved.

Pagetop