R4 午後2 問2 設問3 (1) ① ②

みむろ杉さん  
(No.1)
https://www.db-siken.com/pdf/04_aki/pm2_2.pdf

2つのテーブルに列を追加する設問になり、解答にフェリー番号が不要である理由が分からずにいます。

IPAの解答例は、

テーブル名:予約
列名:個室宿泊区画番号


テーブル名:予約客
列名:大部屋宿泊区画番号

私は下記のようにフェリー番号を加えて解答しました。

テーブル名:予約
列名:フェリー番号、個室宿泊区画番号


テーブル名:予約客
列名:フェリー番号、大部屋宿泊区画番号

宿泊区画テーブルは {フェリー番号、宿泊区画番号} の複合主キーであり、既存の乗船、乗船客テーブルも下記のようにフェリー番号が設定されています。
テーブル名:乗船
列名:フェリー番号、乗船時個室宿泊区画番号

テーブル名:乗船客
列名:フェリー番号、乗船時大部屋宿泊区画番号

三好本の解説もこの点は特に触れられていなかったので、何か基本的な部分を見落としているのではないかと思いますが、なぜ解答にフェリー番号が不要であるのかが分からずにいます。

もしお分かりになる方がいましたら、ご教示いただけると幸いです。
2024.09.23 14:45
みかんさん 
DB ブロンズマイスター
(No.2)
  答えありきですが、他のテーブルから継承するからです。令和4年午後II問2は中身が薄っぺらいので軽く流せばいいですよ。ウォーリーを探せ、みたいな訓練にはなるかな。
  令和5年午後Ⅰでわざわざ再出題したという事は、やっぱりIPAでも問題視されたのかしら?
2024.09.23 17:24
みむろ杉さん  
(No.3)
みかんさん、ご回答ありがとうございます。

>他のテーブルから継承するからです。
こちらですが、乗船、乗船客テーブルも参照先テーブルからフェリー番号を辿れるので、そうなると乗船、乗船客テーブルにはなぜフェリー番号を持たせているのだろう、といった疑問が湧きます。

・参照先テーブルから辿れるからフェリー番号を持たせない
・参照先テーブルから辿れるけれどもフェリー番号を持たせる
上記いずれかに統一されていれば納得できるのですが、予約と乗船で外部キーの持たせ方が違う理由が分かりません。。

実は令和4年午後II問2は今回で5周目でして、4周目まではIPAの解答例に特に疑問を持たなかったのですが、5周目で初めてあれっ?と思いまして、今回を機に疑問を解消出来ればと思っています。
2024.09.23 18:37
みかんさん 
DB ブロンズマイスター
(No.4)
[概念データモデルとテーブル構造]
…。テーブル構造は、概念データモデルでサブタイプとしたエンティティタイプを、スーパータイプのエンティティタイプにまとめた。*…
  *論理設計でミスが発生。ここで冗長なフェリー番号を持たせずに、継承と修正するべきでした。
  顧客登録有予約客、顧客登録無予約客、顧客登録有乗船客、顧客登録無乗船客のように微に入り細に入りお絵描きを頑張っても、平成あるあるなスパゲティになって炎上するだけなんですよね。他にも例えば、令和4年午後Ⅰ問1の発信通話。
  お絵描き頑張っても論理設計でバッサリなので、令和は最初から論理設計なんですよ。
2024.09.23 22:12
みむろ杉さん  
(No.5)
みかんさん、再度ご回答いただきありがとうございました。
論理設計についてのご指摘、大変参考になりました。
自分でも引き続き考察していきたいと思います。
ご丁寧に教えていただき感謝いたします。
2024.09.24 10:36

返信投稿用フォーム

※SQL文は全角文字で記載してください。
※宣伝や迷惑行為を防止するため、当サイト、姉妹サイト、IPAサイト以外のURLを含む記事の投稿はできません。

投稿記事削除用フォーム

投稿番号:
パスワード:

その他のスレッド


Pagetop