共通テスト 情報Ⅰ・6-8

応用-8 データベースと情報システムの一問一答

共通テスト「情報Ⅰ」の「共通テスト形式の応用」から、応用-8 データベースと情報システムに関する4択問題を10問。「答えと解説を見る」を開くと、正解とその理由がその場で読めます。会員登録は不要です。

この分野の演習

全10問/解説付き・基本無料

アプリ形式で解く(全800問) 共通テスト形式の応用の要点解説を読む
問題

上から順に解いてみてください。答えは各問の下で確認できます。

問16-8・応用
生徒表
生徒番号クラス部活コード
10011組B1
10022組B2
10031組B3
10043組B1
10052組B1
10061組B2
部活表
部活コード部活名活動場所
B1卓球部体育館
B2美術部美術室
B3合唱部音楽室
「結合」は2つの表を部活コードが等しい行どうしでつなぐ操作で、相手の表に同じ部活コードがない行は結果に残らない。生徒表と部活表を結合し、活動場所が「体育館」の行を選択して、生徒番号の列を射影した。結果に含まれる生徒番号をすべて挙げたものはどれか。
  • ①1002, 1006
  • ②1001, 1004
  • ③1001, 1004, 1005
  • ④1001, 1003, 1006
答えと解説を見る
正解 ③1001, 1004, 1005
解説
正解は「1001, 1004, 1005」。体育館で活動するのはB1(卓球部)で、部活コードがB1の生徒は3人です。

手順
①結合:生徒表の各行に、部活コードが同じ部活表の行(部活名・活動場所)をつなぎます。
②選択:活動場所が体育館の行、つまり部活コードB1の行(1001、1004、1005)を取り出します。
③射影:生徒番号の列だけを取り出します。

ひっかけ注意

・「1002, 1006」…部活コードB2(美術部・美術室)の生徒。活動場所が体育館という条件に合いません。
・「1001, 1004」…B1の生徒のうち、2組の1005を見落としています。B1の生徒は3人です。
・「1001, 1003, 1006」…クラスが1組の生徒。活動場所の条件をクラスの条件と取り違えています。
問26-8・応用
生徒表
生徒番号クラス部活コード
10011組B1
10022組B2
10031組B3
10043組B1
10052組B1
10061組B2
生徒表に対してある操作を1回行ったところ、次の表が得られた。
クラス部活コード
1組B1
2組B2
1組B3
3組B1
2組B1
1組B2
行った操作として適切なものはどれか。
  • ①選択
  • ②結合
  • ③並べ替え
  • ④射影
答えと解説を見る
正解 ④射影
解説
正解は「射影」。行の数は6行のまま変わらず、生徒番号の列だけがなくなっています。

なぜ
射影は、表から必要な列(項目)だけを取り出す操作です。選択は条件に合う行を取り出す操作、結合は2つの表を共通の項目でつなぐ操作です。

ひっかけ注意

・「選択」…条件に合う行を取り出す操作。結果は6行すべて残っており、減ったのは列(3列→2列)です。
・「結合」…別の表の列が加わる操作。結果の列は3列から2列にむしろ減っています。
・「並べ替え」…行の順番を変える操作で、列はなくなりません。この結果は6行の順番も元のままです。
問36-8・応用
図書室の貸出記録表は次のとおりである。この図書室では、1冊の本は同じ日に1回までしか貸し出さない(その日のうちに返されても、同じ日にはもう貸し出さない)。
貸出日生徒番号本の番号
9月1日1001K12
9月1日1001K30
9月1日1002K15
9月8日1002K12
9月15日1001K12
今後記録が増えても、行を1つに決められる主キーとして最も適切なものはどれか。
  • ①本の番号と貸出日の組
  • ②生徒番号と本の番号の組
  • ③生徒番号と貸出日の組
  • ④本の番号だけ
答えと解説を見る
正解 ①本の番号と貸出日の組
解説
正解は「本の番号と貸出日の組」。きまりにより、同じ本が同じ日に2回記録されることはないので、この組で行が1つに決まります。

なぜ
主キーは、表の中で行を1つに決められる項目(またはその組)です。今の記録で重ならないだけでなく、きまりの上で将来も重ならないものを選びます。

ひっかけ注意

・「生徒番号と本の番号の組」…1001がK12を9月1日と9月15日の2回借りており、既に重なっています。同じ人が同じ本を借り直す場合があります。
・「生徒番号と貸出日の組」…1001は9月1日に2冊借りており、既に重なっています。1日に2冊以上借りる場合があります。
・「本の番号だけ」…K12は3回貸し出されており、既に重なっています。1冊の本は日を変えて何度も貸し出されます。
問46-8・応用
学校の部活動の管理に、次の1つの表を使っている。
生徒番号部活名活動場所
1001卓球部体育館
1004卓球部体育館
1005卓球部体育館
1002美術部美術室
卓球部の活動場所が変わったとき、直し忘れによる食い違いが起きにくい設計として最も適切なものはどれか。
  • ①表を部活ごとのファイルに分けて、それぞれの担当者が管理する
  • ②部活の情報を別の表に分け、生徒の表には部活コードだけ持たせる
  • ③活動場所を変えるたびに、その部活の行をすべて検索して書き直す
  • ④活動場所の列を消し、部活名から活動場所を毎回思い出してもらう
答えと解説を見る
正解 ②部活の情報を別の表に分け、生徒の表には部活コードだけ持たせる
解説
正解は「部活の情報を別の表に分け、生徒の表には部活コードだけ持たせる」。活動場所が1か所にだけ記録され、直すのは1行で済みます。

なぜ
同じ情報をいくつもの行に繰り返し書くと、変更のときに一部を直し忘れて食い違いが起きやすくなります。表を分けて部活コードで結びつければ、同じ情報は1か所にだけ置かれ、必要なときに結合して使えます。この設計の工夫を正規化といいます。

ひっかけ注意

・「表を部活ごとのファイルに分けて、それぞれの担当者が管理する」…データがばらばらになり、全体の検索や集計がしにくくなります。同じ生徒の情報が複数のファイルに重なる場合もあります。
・「活動場所を変えるたびに、その部活の行をすべて検索して書き直す」…同じ情報が3行にある状態は変わらず、1行でも直し忘れると食い違いが残ります。
・「活動場所の列を消し、部活名から活動場所を毎回思い出してもらう」…必要なデータを記録しないことになり、人の記憶だけに頼るため、データベースとして使えません。
問56-8・応用
生徒表
生徒番号クラス部活コード
10011組B1
10022組B2
10031組B3
10043組B1
10052組B1
10061組B2
部活表
部活コード部活名活動場所
B1卓球部体育館
B2美術部美術室
B3合唱部音楽室
「結合」は2つの表を部活コードが等しい行どうしでつなぐ操作で、相手の表に同じ部活コードがない行は結果に残らない。部活表に「B4軽音楽部部室」の行を追加した。そのあと生徒表と部活表を結合すると、結果は何行になるか。
  • ①4行
  • ②24行
  • ③6行
  • ④7行
答えと解説を見る
正解 ③6行
解説
正解は「6行」。生徒表の6人はどれも部活表に対応する行があり、B4に所属する生徒はいないので、行は増えません。

手順
①生徒表の各行を、部活コードが同じ部活表の行とつなぎます。
②B1、B2、B3の生徒は合わせて6人で、どの行も相手があります。
③B4はどの生徒とも部活コードが一致しないので、結果に残りません。よって6行です。

ひっかけ注意

・「4行」…部活の追加後の部活表の行数(B1〜B4)。結合の結果の行数は、つながった組の数で決まります。
・「24行」…6行×4行のすべての組合せの数。結合では、部活コードが等しい組だけをつなぎます。
・「7行」…追加したB4の行も結果に入ると考えた値。この問題の条件では、相手のない行は残りません。
問66-8・応用
ネットで商品を注文できるシステムで、在庫が残り1個の商品に、2人がほぼ同時に注文した。どちらの処理も「在庫数を読み出す→1以上なら注文を受け付ける→在庫数から1を引いて書き込む」を行う。処理は次の表の順に進み、2人とも注文を受け付けてしまった。
順番注文Xの処理注文Yの処理
1在庫数を読み出す(1)
2在庫数を読み出す(1)
31以上なので注文を受け付ける
41以上なので注文を受け付ける
51を引いて0を書き込む
61を引いて0を書き込む
これを防ぐ方法として最も適切なものはどれか。
  • ①注文のデータを毎晩まとめて、別の記憶装置に複製して保存しておく
  • ②在庫数のデータを暗号化して、第三者に内容を読まれないようにする
  • ③注文を受け付けた後で、確認のメールを利用者に自動で送信する
  • ④一方の処理が終わるまで、他方の処理に在庫数を読み書きさせない
答えと解説を見る
正解 ④一方の処理が終わるまで、他方の処理に在庫数を読み書きさせない
解説
正解は「一方の処理が終わるまで、他方の処理に在庫数を読み書きさせない」。これを排他制御といいます。

なぜ
表の順番1・2のように、2つの処理が同じ在庫数をほぼ同時に読むと、どちらも残り1個と判断してしまいます。一方が読み出しから書き込みまでを終えるまで、他方には読み出しもさせずに待たせます。そうすれば後の処理は在庫0を読み、注文を断れます。書き込みだけを止めても、先に古い在庫数1を読んでいれば、同じ食い違いが起きます。

ひっかけ注意

・「注文のデータを毎晩まとめて、別の記憶装置に複製して保存しておく」…バックアップのこと。故障のときに元に戻すための備えで、同時の注文による食い違いは防げません。
・「在庫数のデータを暗号化して、第三者に内容を読まれないようにする」…盗み見への対策(機密性を守る)で、2つの処理の順番の問題は解決しません。
・「注文を受け付けた後で、確認のメールを利用者に自動で送信する」…受け付けた後の連絡なので、在庫1個に2件の注文を受け付けること自体は防げません。
問76-8・応用
生徒表
生徒番号クラス部活コード
10011組B1
10022組B2
10031組B3
10043組B1
10052組B1
10061組B2
部活表
部活コード部活名活動場所
B1卓球部体育館
B2美術部美術室
B3合唱部音楽室
「結合」は2つの表を部活コードが等しい行どうしでつなぐ操作で、相手の表に同じ部活コードがない行は結果に残らない。「2組の生徒が入っている部活の部活名」を求めたい。操作の手順として正しいものはどれか。
  • ①2つの表を結合し、クラスが2組の行を選択し、部活名を射影する
  • ②生徒表から部活名を射影し、クラスが2組の行を選択して結合する
  • ③部活表からクラスが2組の行を選択し、その結果を生徒表と結合する
  • ④生徒表から部活コードを射影し、クラスが2組の行をその後で選択する
答えと解説を見る
正解 ①2つの表を結合し、クラスが2組の行を選択し、部活名を射影する
解説
正解は「2つの表を結合し、クラスが2組の行を選択し、部活名を射影する」。クラスは生徒表、部活名は部活表にあるので、まず結合が必要です。

なぜ
選択や射影は、その時点の表にある列しか使えません。クラスと部活名は別の表にあるので、結合して1つの表にしてから、条件で行を選び、必要な列を取り出します。

ひっかけ注意

・「生徒表から部活名を射影し、クラスが2組の行を選択して結合する」…生徒表には部活名の列がないので、最初の射影ができません。部活名は部活表だけにあります。
・「部活表からクラスが2組の行を選択し、その結果を生徒表と結合する」…部活表にはクラスの列がないので、最初の選択ができません。クラスは生徒表だけにあります。
・「生徒表から部活コードを射影し、クラスが2組の行をその後で選択する」…部活コードだけを射影するとクラスの列が消え、その後の選択ができません。部活名も得られません。
問86-8・応用
生徒表
生徒番号クラス部活コード
10011組B1
10022組B2
10031組B3
10043組B1
10052組B1
10061組B2
部活表
部活コード部活名活動場所
B1卓球部体育館
B2美術部美術室
B3合唱部音楽室
「結合」は2つの表を部活コードが等しい行どうしでつなぐ操作で、相手の表に同じ部活コードがない行は結果に残らない。生徒表と部活表を結合し、クラスが2組の行を選択して、部活名を射影した。結果に含まれる部活名をすべて挙げたものはどれか。
  • ①美術部だけ
  • ②卓球部, 美術部
  • ③美術部, 合唱部
  • ④卓球部, 合唱部
答えと解説を見る
正解 ②卓球部, 美術部
解説
正解は「卓球部, 美術部」。2組の生徒は1002(B2)と1005(B1)の2人です。

手順
①結合して、各生徒に部活名をつなぎます。
②クラスが2組の行を選択:1002(美術部)、1005(卓球部)です。
③部活名を射影すると、卓球部と美術部になります。

ひっかけ注意

・「美術部だけ」…1005(2組・B1=卓球部)を見落としています。2組の生徒は2人です。
・「美術部, 合唱部」…合唱部(B3)の1003は1組の生徒なので、2組の選択で外れます。
・「卓球部, 合唱部」…1002の部活コードB2(美術部)を見落とし、1組の1003の合唱部を入れています。
問96-8・応用
生徒表
生徒番号クラス部活コード
10011組B1
10022組B2
10031組B3
10043組B1
10052組B1
10061組B2
部活表
部活コード部活名活動場所
B1卓球部体育館
B2美術部美術室
B3合唱部音楽室
生徒表の部活コードは、部活表の部活コードを参照している(生徒表の部活コードは、部活表にある値でなければならない)。生徒表に追加すると、このきまりに反する行はどれか。
  • ①1008|2組|B2
  • ②1009|3組|B1
  • ③1007|1組|B9
  • ④1007|3組|B3
答えと解説を見る
正解 ③1007|1組|B9
解説
正解は「1007|1組|B9」。部活表にB9という部活コードはないので、参照先のない行になります。

なぜ
他の表の値を参照する列(外部キー)には、参照先の表にある値だけを入れます。ない値を入れると、結合したときに部活名や活動場所が分からない生徒が生まれ、データの食い違いの原因になります。DBMSでは、このきまりを参照制約として設定できます。

ひっかけ注意

・「1008|2組|B2」…B2(美術部)は部活表にあります。生徒番号1008も今ある番号と重なりません。
・「1009|3組|B1」…B1(卓球部)は部活表にあります。1つの部活に何人所属してもかまいません。
・「1007|3組|B3」…B3(合唱部)は部活表にあります。生徒番号1007も今ある6人の番号と重なりません。
問106-8・応用
学校で、生徒の成績や住所を管理する情報システムを作る。このシステムを使う人と、その主な仕事は次の表のとおりである。
利用者主な仕事
担任自分のクラスの生徒の成績と連絡先を確認する
教科担当担当する教科の成績を入力する
事務職員生徒の住所などの連絡先を管理する
利用者の権限の決め方として最も適切なものはどれか。
  • ①利用者全員に同じ閲覧権限を与え、更新は記録を残して全員に許す
  • ②通信を暗号化しているので、利用者の権限は区別せずに同じにする
  • ③毎日バックアップを取るので、全員にすべての更新を許しておく
  • ④利用者ごとに、仕事で必要なデータだけの閲覧や更新を許可する
答えと解説を見る
正解 ④利用者ごとに、仕事で必要なデータだけの閲覧や更新を許可する
解説
正解は「利用者ごとに、仕事で必要なデータだけの閲覧や更新を許可する」。必要な人に必要な分だけ権限を与えると、漏えいや誤った書き換えを減らせます。

なぜ
表のように、利用者ごとに必要なデータは違います。例えば教科担当は、担当する教科の成績を入力できればよく、住所を見る必要はありません。個人情報は、見る必要のない人に見られるだけで問題になります。権限を必要最小限にしておけば、操作ミスや不正があっても影響を小さくできます。

ひっかけ注意

・「利用者全員に同じ閲覧権限を与え、更新は記録を残して全員に許す」…記録を残しても、必要のない人が個人情報を見たり書き換えたりできる状態は変わりません。記録は後から調べるための備えです。
・「通信を暗号化しているので、利用者の権限は区別せずに同じにする」…暗号化は通信の途中での盗み見への対策で、正規の利用者が必要以上に見ることは防げません。
・「毎日バックアップを取るので、全員にすべての更新を許しておく」…バックアップは壊れたデータを元に戻すための備えで、見られることや誤った書き換えそのものは防げません。

当サイトは、独立行政法人 大学入試センターとは一切関係のない、非公式の学習サイトです。試験に関する最新情報は、大学入試センターの公式サイトでご確認ください。

共通テスト 情報Ⅰ 基礎完全対策(全800問)に戻る

※本ページでは、アクセス解析(Googleアナリティクス)と、広告の配信・成果の計測(A8.net)のためにCookie等を利用し、閲覧に関する情報をGoogle LLC・株式会社ファンコミュニケーションズへ送信しています。詳しくはプライバシーポリシーをご覧ください。

※本ページの問題・解説は、生成AI(人工知能)を活用して作成しています。

【PR】