ITblog

データベーススペシャリスト過去問令和5年午後1問3設問2(5)の解説

2024年08月18日

データベーススペシャリストで、令和5年午後1問3(5)について、答え合わせをしていて、理解に時間がかかった箇所があったので、解説したいと思います。

問題(5)

表7中のイ~カに入れる手順を、それぞれ次の①~⑤の中から1つ選べ。①~⑤が全て使われるとは限らない。ただし、バックアップの取得と索引の保守については考慮しなくてよい。

区分化前

1.圃場カレンダに翌年の行を追加する。

2.イ’(①圃場カレンダから古い行を削除する)

3.圃場カレンダを再編成する

4.ゥ(④観測を再編成する)

区分化後

1.圃場カレンダに翌年の行を追加する

2.観測に翌年度の区分を追加する

3.エ(⑤観測から古い区分を切り離す)

4.オ(①圃場カレンダから古い行を削除する)

5.カ(②圃場カレンダを再編成する)

解説

私は、この問題の中で回答にある③「観測から古い行を削除する」が、なぜ含まれないのかと疑問に思いました。

問題に、「5年以上前の不要な行を効率よく削除し」とあるためです。

しかし、それは問題文をよく読むと、理由が分かりました。

表2の「観測」テーブルの定義についてを読んでいるのですが、よく見ると、観測テーブルには外部キーにON DELETE CASCADE がついているのです。

FOREIGN KEY(観測日付、圃場ID) REFERENCES 圃場カレンダ(標準日付、圃場ID) ON DELETE CASCADE

このため、圃場カレンダの外部キーの行が削除されると、合わせて観測テーブルも削除される仕様になっているというわけです。

そのため、どちらの手順においても、観測から古い行を削除する必要がないわけです。

また、区分化後では、観測テーブルについては年度ごとに区分化がされているため、該当の古い区分を切り離すだけで、観測テーブルの再編成は必要がないということになります。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です