H28 午後1 問1 設問3 (2) について
vさん
(No.1)
お世話になっております。
表題の設問3 (2)(c)について質問です。
ポイント消費の具体例を記述する問題で、模範解答だと会員IDと交換年月日、付与年月に主キーを示す直線が引かれています。ですがこの場合だと同じ会員が同じ年月日に、同じ年月に付与されたポイントを複数回使用した場合主キー制約に引っ掛かると思うのですが大丈夫なのでしょうか?
※例
①2015年4月に150ポイント付与される
②2015年6月10日に10ポイントの異なる商品を二つ交換する
③消費したポイントは合計20ポイントだけなので付与年月はどちらも同じく2015年4月のものとなる
④登録されるデータは会員IDと交換年月日、付与年月が同一のものとなる
おそらく大丈夫だから模範解答になっていると思うのですが問題ない理由がわからず無駄に時間を取られてしまっています。
どなたかご教授いただければ幸いです。
表題の設問3 (2)(c)について質問です。
ポイント消費の具体例を記述する問題で、模範解答だと会員IDと交換年月日、付与年月に主キーを示す直線が引かれています。ですがこの場合だと同じ会員が同じ年月日に、同じ年月に付与されたポイントを複数回使用した場合主キー制約に引っ掛かると思うのですが大丈夫なのでしょうか?
※例
①2015年4月に150ポイント付与される
②2015年6月10日に10ポイントの異なる商品を二つ交換する
③消費したポイントは合計20ポイントだけなので付与年月はどちらも同じく2015年4月のものとなる
④登録されるデータは会員IDと交換年月日、付与年月が同一のものとなる
おそらく大丈夫だから模範解答になっていると思うのですが問題ない理由がわからず無駄に時間を取られてしまっています。
どなたかご教授いただければ幸いです。
2022.09.23 22:01
ストラトスさん
(No.2)
問題文では「記録される」という言い方になっています。
「記録」というのは「レコード追加」という意味だけではなく、「レコード更新」という意味も含んでいます。
ということで、2015年6月10日に2回ポイント交換を行った場合の消費ポイントテーブルのレコードは以下のような動きになります。
会員ID┃付与年月┃交換年月日┃消費ポイント
1回目のポイント交換時 T1234567┃2015-04┃2015-06-10┃10 ← レコード追加
2回目のポイント交換時 T1234567┃2015-04┃2015-06-10┃20 ← レコード更新
「記録」というのは「レコード追加」という意味だけではなく、「レコード更新」という意味も含んでいます。
ということで、2015年6月10日に2回ポイント交換を行った場合の消費ポイントテーブルのレコードは以下のような動きになります。
会員ID┃付与年月┃交換年月日┃消費ポイント
1回目のポイント交換時 T1234567┃2015-04┃2015-06-10┃10 ← レコード追加
2回目のポイント交換時 T1234567┃2015-04┃2015-06-10┃20 ← レコード更新
2022.09.23 23:38
vさん
(No.3)
>ストラトスさん(No.2)
ご回答いただきありがとうございます。
めちゃくちゃ納得できました。確かに新規追加なんてどこにも書かれていませんでした......
勝手な思い込みが危険ということをまた改めて思い知らされる問題でした。
ありがとうございます!
2022.09.24 00:33
返信投稿用フォーム
スパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。