理解度チェック:データベースの仕組みを理解しよう
クイズの説明
Step 1で学んだ内容の理解度をチェックします。
- 全8問
- 合格ライン: 75%(6問正解)
- 不合格の場合は復習してから再挑戦してください
問題
Q1. データベースの主な役割として正しいものはどれですか?
- A) プログラムを実行するための環境
- B) データを整理して保存し、必要なときに素早く取り出す仕組み
- C) ファイルを圧縮して容量を節約する仕組み
- D) インターネットに接続するためのソフトウェア
正解: B
データベースは「データを整理して保存し、必要なときに素早く取り出せる仕組み」です。 ユーザー情報、商品情報、注文履歴など、あらゆるデータを管理します。
</details>Q2. リレーショナルデータベースの特徴と して正しいものはどれですか?
- A) データをJSON形式で保存する
- B) データを表(テーブル)で管理し、SQLで操作する
- C) データをキーと値のペアで保存する
- D) データを画像として保存する
正解: B
リレーショナルデータベース(RDB)は、データを「表(テーブル)」で管理するタイプのデータベースです。 SQLという言語を使ってデータを操作します。
- A) はNoSQL(MongoDBなど)の特徴
- C) はNoSQL(Redisなど)の特徴
Q3. テーブルの「カラム(列)」と「ロウ(行)」の説明として正しいものはどれですか?
- A) カラムは1件分のデータ、ロウはデータの種類を定義する
- B) カラムもロウも同じ意味である
- C) カラムはデータの種類を定義し、ロウは1件分のデータを表す
- D) カラムはテーブル名、ロウはデータベース名である
正解: C
- カラム(列) = データの種類を定義する(id、name、email など)
- ロウ(行) = 1件分のデータ(田中太郎の情報一式 など)
Excelで例えると、カラムは「A列、B列」、ロウは「1行目、2行目」に相当します。
</details>Q4. SQLとは何ですか?
- A) プログラミング言語の一種(JavaやPythonのようなもの)
- B) リレーショナルデータベースを操作するための言語
- C) データベースソフトウェアの名前
- D) Webサイトを作るためのマークアップ言語
正解: B
SQL(Structured Query Language)は、リレーショナルデータベースを操作するための言語です。 MySQL、PostgreSQL、SQLiteなど、どのRDBでもほぼ同じSQL構文が使えます。
SQLは一般的なプログラミング言語とは異なり、「何がほしいか」を宣言する「宣言型言語」です。
</details>Q5. CRUDの4つの操作と対応するSQLキーワードの組み合わせとして正 しいものはどれですか?
- A) Create=SELECT, Read=INSERT, Update=DELETE, Delete=UPDATE
- B) Create=INSERT, Read=SELECT, Update=UPDATE, Delete=DELETE
- C) Create=CREATE TABLE, Read=DROP TABLE, Update=ALTER TABLE, Delete=DELETE
- D) Create=UPDATE, Read=DELETE, Update=INSERT, Delete=SELECT
正解: B
CRUDはデータベース操作の基本4つです:
| 操作 | 英語 | SQLキーワード |
|---|---|---|
| C | Create(作成) | INSERT |
| R | Read(読み取り) | SELECT |
| U | Update(更新) | UPDATE |
| D | Delete(削除) | DELETE |
最も使用頻度が高いのはSELECT(Read)です。
</details>Q6. PRIMARY KEY(主キー)の役割として正しいものはどれですか?
- A) テーブルのデータを暗号化する
- B) テーブル内の各ロウを一意に識別する
- C) テーブルの名前を設定する
- D) テーブルのデータを並び替える
正解: B
PRIMARY KEY(主キー)は、テーブル内の各ロウ(行)を一意に識別するためのカラムです。
- 同じ値が2つ以上存在できない(一意性)
- NULL(空)にできない
- 通常は
idというカラム名で、INTEGER型の連番を使います
例:同姓同名の「田中太郎」が2人いても、id=1とid=5で区別できます。
</details>Q7. SQLiteの特徴として 正しいものはどれですか?
- A) 大規模な企業向けサーバーで、設定が複雑
- B) サーバー不要でファイル1つで動く軽量なデータベース
- C) NoSQL型のデータベースで、テーブルがない
- D) 有料のデータベースソフトウェア
正解: B
SQLiteの特徴:
- ファイル1つで動く(サーバー不要)
- 軽量でインストールが簡単
- 無料(オープンソース)
- SQLの基本構文はMySQL、PostgreSQLとほぼ同じ
- Android、iOS、Chromeなど多くのソフトで採用されている
学習に最適なデータベースです。
</details>Q8. NULLの説明として正しいものはどれですか?
- A) 数値の0と同じ意味
- B) 空文字("")と同じ意味
- C) 「値が存在しない」「未入力」を表す特別な値
- D) エラーが発生し たことを示す値
正解: C
NULLは「値が存在しない」「未入力」を表す特別な値です。
- NULLは「0」とは違う(0は「ゼロという値がある」)
- NULLは「空文字」とも違う(空文字は「空の文字列という値がある」)
- NULLは「値そのものが存在しない」という状態
必須項目には NOT NULL 制約をつけて、NULLを禁止できます。
結果
6問以上正解の場合
合格です!おめでとうございます!
Step 1「データベースの仕組みを理解しよう」を完了しました。 次はStep 2「SELECTでデータを取得しよう」に進みましょう。
5問以下の場合
もう少し復習しましょう
間違えた問題の内容を、該当するセクションで復習してください:
| 問題 | 復習セクション |
|---|---|
| Q1 | step1_1 なぜデータベースを学ぶのか |
| Q2 | step1_2 データベースの種類と用語 |
| Q3 | step1_2 データベースの種類と用語 / step1_4 テーブルの仕組みを理解しよう |
| Q4 | step1_5 SQLの基本用語を覚えよう |
| Q5 | step1_5 SQLの基本用語を覚えよう |
| Q6 | step1_4 テーブルの仕組みを理解しよう |
| Q7 | step1_3 SQLiteをインストールしよう |
| Q8 | step1_4 テーブルの仕組みを理解しよう |
Step 1 完了!
お疲れさまでした!
学んだこと
- データベースとは何か、なぜ必要か
- リレーショナルデータベースの種類と基本用語
- SQLiteのインストールと起動方法
- テーブルの構造(カラム、ロウ、データ型、PRIMARY KEY、NULL)
- SQLの基本用語: CRUD、DDL、DML
次のステップ
Step 2: SELECTでデータを取得しよう(4時間)
実際にSELECT文を使って、条件指定や並び替えなどのデータ取得を体験します。
推定所要時間: 15分