連絡先管理用 SQLite データベースの構築

SQLiteBeginner
オンラインで実践に進む

はじめに

このチャレンジでは、顧客の連絡先情報を保存するための SQLite データベースを構築します。目標は、~/project ディレクトリ内に配置する customers.db データベースの中に customers テーブルを設計し、作成することです。

id(INTEGER PRIMARY KEY)、name(TEXT)、および email(TEXT)のカラムを定義し、重複するメールアドレスの登録を防ぐために email カラムに UNIQUE(ユニーク)制約を設定します。このチャレンジでは、sqlite3 シェルを使用して SQL コマンド(特に CREATE TABLE 文)を実行し、.schema customers コマンドを使用してテーブル構造を確認する作業を行います。

連絡先管理用 SQLite データベースの構築

顧客情報を保存するためのデータベーステーブルを設計します。

タスク

  • customers.db データベース内に、idnameemail カラムを持つ customers という名前のテーブルを作成してください。id カラムは主キー(Primary Key)にする必要があります。
  • 各顧客が固有のメールアドレスを持つように、customers テーブルの email カラムに UNIQUE 制約を追加してください。

要件

  1. ~/project ディレクトリにある SQLite データベース customers.db に接続します。
  2. CREATE TABLE 文を使用して customers テーブルを作成します。
  3. id カラムは INTEGER 型かつ PRIMARY KEY でなければなりません。
  4. name および email カラムは TEXT 型である必要があります。
  5. email カラムに UNIQUE 制約を実装してください。
  6. すべての SQL コマンドは sqlite3 シェル内で実行する必要があります。

実行例

テーブルの作成に成功した後、PRAGMA table_info(customers); コマンドを実行すると、以下のような出力が得られるはずです。

0|id|INTEGER|0||1
1|name|TEXT|0||0
2|email|TEXT|0||0

ヒント

  • データベースに接続するには sqlite3 コマンドを使用します:sqlite3 customers.db
  • 新しいテーブルを作成するには CREATE TABLE 文を使用します。
  • PRIMARY KEY 制約は、id カラムが各行を一意に識別することを保証します。
  • UNIQUE 制約は、email カラム内のすべての値が重複しないことを保証します。
  • テーブル構造を確認するには .schema customers を使用します。
✨ 解答を確認して練習

まとめ

このチャレンジでは、顧客情報を保存するために customers.db という名前の SQLite データベースを作成しました。タスクの内容は、id(INTEGER PRIMARY KEY)、name(TEXT)、および email(TEXT)のカラムを持つ customers テーブルを設計し、実装することでした。

主な学習ポイントは、制約(Constraint)の適用です。具体的には、id カラムを主キーとして設定し、UNIQUE 制約を使用して email カラムの一意性を強制する方法を学びました。また、.schema customers コマンドを使用して、テーブルの作成成功と構造の確認を行いました。