H30午後1問2設問3(1)

tarouさん  
(No.1)
どうしても腑に落ちないのですが
部署テーブルから不要な行を削除したとき、CASCADEにより従業員テーブルを削除する契機って
②だと思ってしまいます。

猶予モードだからトランザクション終了時=コミットするとき
に検査するのではないのでしょうか。
2022.07.03 16:13
にゃんちゃんさん 
DB シルバーマイスター
(No.2)
お気持ちは非常によく分かります!
問題文の「不具合の契機」という言葉の解釈の問題かと思います。
何故午後問題はこういう言い回しをしたがるのか分かりませんが
翻訳というか言い換えると「バグの原因」ですかね。

念のため流れを確認しますと
①「部署」テーブルから不要な行を削除する。
  「部署」テーブルから旧部署が削除される。
  連鎖削除により、「従業員」テーブルからも旧部署に紐づく従業員が削除される。
②コミットする。
  猶予モードにより、制約の検査が実行される。

本問で聞かれているのは、検査契機ではなく不具合の契機なので①になります。
②は検査の契機ではありますが、コミットすること自体が不具合の原因ではないので不正解になります。

検査契機と紛らわしいので、原因とかきっかけとか他に言い回しがあるだろうと思いますが
意図的にひっかけてるんですかね。。。そこまでは出題者の意図が分かりません。
2022.07.04 00:15
山茶さん 
(No.3)
問題文から「何」の不具合かを読み取りましょう。
ここでは「制約違反」の問いではなく、「処理の順番」の問いです。
②のコミットの有無に関わらず、①③⑤の順で実行すると不具合ありますよね。

問題文に「制約違反が発生する」のようにあれば②が正解になるかと思います。
2022.07.04 22:05

返信投稿用フォーム

スパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。

その他のスレッド


Pagetop