HOME»データベーススペシャリスト掲示板»令和6年 午後I  問1 設問1 (2) a
投稿する

令和6年 午後I  問1 設問1 (2) a [0933]

 ayaさん(No.1) 
表題の設問に腑に落ちていない点があり、納得するきっかけを探しています。

■解答に関係するエンティティ
テスト結果詳細(アカウント#,コース#,セクション#,コンテンツ#,設問#,選択肢#,解答日時)
PK:アカウント#,コース#,セクション#,コンテンツ#,設問#
FK:選択肢#

■問題文から抜粋
「受験生は、自分が最後に実施したテストで選択した各設問の選択肢と回答日時を確認することができる」とあるので、**設問#と選択肢#**を記録する。

 上記についての説明が問題文にあるため、解答の属性(設問#,選択肢#)について納得しています。しかし、選択肢がなぜ外部キーなのか納得できていないです。
関係"テスト設問選択肢"と関係"テスト結果詳細"の間にリレーションシップがあり、選択肢もPKに含まれると勘違いしています。
 解答のように選択肢#をFKにするということは、重複してもエラーにならないためにしていると考えました。それは受講生1人に対して同じ選択肢のデータを登録したいからなのかと思っています。でもそれが問題文に記されているわけではないと思うのであくまでも自分の想像です。
2025.09.14 20:43
ぶどうさん(No.2) 
 例、テスト設問選択肢
{…,設問1,選択肢①},正解
{…,設問1,選択肢②},不正解
{…,設問1,選択肢③},不正解
 選択肢②を選んで試験終了したら、テスト結果詳細には、
{…,設問1},選択肢②,9月15日12時00分
 後日再試験、選択肢①を選んで試験終了したら上書き。
{…,設問1},選択肢①,9月16日12時00分

 選択肢を主キーに含めると、複数選択式で回答可能になるので出題設定に合わない。
{…,設問1,選択肢②},9月15日12時00分
{…,設問1,選択肢①},9月15日12時00分
 最後に実施した(単一選択式)テストではどちらを選んだの???
2025.09.15 03:17
 ayaさん(No.3) 
ぶどうさん
ご回答ありがとうございます。
考えの誤りを納得することができました。

「自分が最後に実施したテストで選択した各設問の選択肢」
>>>択一選択肢の中の1つのこと

勝手に各選択肢の解答日時を確認することができるのだと、勘違いしていました。
誤りが確認できたため、おのずと選択肢#をPKにしていけないと判断できました。

選択肢#をPKにする:複数の選択肢を登録できる
選択肢#をFKにする:複数の選択肢を登録できない。複合主キーにより、あるアカウントによる設問は1つしか登録できなくなるから。
2025.09.15 19:45
枝豆5656さん(No.4) 
横からすみません。ちょっと別の視点でのコメントです。
同じ受講生が同じ設問を何回も回答できて、その結果を全て確認できるのだとしても選択肢を主キーに含めることはないと思います。その場合、主キーに含めるなら、例えば回答日時や何回目か等になると思います。
ある受講生がある設問に対してある日時に回答した選択肢は1つしかない(一意に決まる)ので、極小前提の主キーには選択肢を含めてはならないというのが当方の理解です。
2025.09.15 20:40
返信投稿用フォーム
お名前
顔アイコン

本文(コミュニティガイドライン⇱を順守して適切な投稿を心がけましょう)
🔐投稿削除用のパスワード(任意)
投稿プレビュー
※SQL文は全角文字で記載してください。
※宣伝や迷惑行為を防止するため、当サイト、姉妹サイト、IPAサイト以外のURLを含む文章の投稿はできません。
投稿記事削除用フォーム
投稿No. パスワード 
© 2016- データベーススペシャリストドットコム All Rights Reserved.

Pagetop