投稿する

[0553] R2 午後I 問3 設問1(3)

 Flatailさん(No.1) 
タイトルの問題において、
選択肢mの解答は「年代 IS NULL」であり、その点は理解ができるのですが、
選択肢mは"法人会員"のデータの条件であり、考えられる検査制約としては、
「担当社員 IS NOT NULL」もあり得るのではないかと思っております。

どのような観点から、「担当社員 IS NOT NULL」ではなく、
「年代 IS NULL」を書くべきと判断するべきでしょうか。

ご教示よろしくお願いいたします。
2023.09.02 17:49
GinSanaさん(No.2) 
DB シルバーマイスター
担当社員IDは要するに社員エンティティから引っ張ってくるわけだが、社員エンティティの社員IDはNULLを許容しないので、NULLはあり得ない。
P23の参照制約で担当社員IDを引いている以上、IS NOT NULLは自明であるので、自明であることを検査制約には書かない。
2023.09.02 21:18
wahiroさん(No.3) 
>[業務の概要](5)
>法人会員には、担当する社員が登録後に1名決められる。

と記載があることから、担当社員が決定されるまではNULLに設定されることが読み取れます。

担当社員IDがNULL許容であることは表3の参照制約「担当社員ID ~ ON DELETE SET NULL」で削除時にNULLが設定されることからから読み取れます。
2023.09.02 22:02
GinSanaさん(No.4) 
DB シルバーマイスター
申し訳ない、No.02は読み飛ばしてください。
2023.09.02 22:26
 Flatailさん(No.5) 
お二方ともありがとうございます!

>[業務の概要](5)
>法人会員には、担当する社員が登録後に1名決められる。
⇒文中を見返してみれば、きちんと書いているのですね。。
  回答中に「とりあえず登録」→「後日担当が決まればUPDATE」のイメージを沸かせて
  いれれば、気づけたのかなと反省です。

GinSanaさんの考え方も、[担当社員ID]がそもそもどこから引っ張られてくるのか
(引っ張られ元の元々の設定はどうだったか)という観点が自分自身
少し弱かったと感じられる気づきとなりました!

ありがとうございます!
2023.09.03 11:08

返信投稿用フォーム

スパム防止のためにスレッド作成日から30日経過したスレッドへの書込みはできません。
© 2016-2024 データベーススペシャリストドットコム All Rights Reserved.

Pagetop