はじめに
このチャレンジでは、顧客の連絡先情報を保存するための SQLite データベースを構築します。目標は、~/project ディレクトリ内に配置する customers.db データベースの中に customers テーブルを設計し、作成することです。
id(INTEGER PRIMARY KEY)、name(TEXT)、および email(TEXT)のカラムを定義し、重複するメールアドレスの登録を防ぐために email カラムに UNIQUE(ユニーク)制約を設定します。このチャレンジでは、sqlite3 シェルを使用して SQL コマンド(特に CREATE TABLE 文)を実行し、.schema customers コマンドを使用してテーブル構造を確認する作業を行います。
連絡先管理用 SQLite データベースの構築
顧客情報を保存するためのデータベーステーブルを設計します。
タスク
customers.dbデータベース内に、id、name、emailカラムを持つcustomersという名前のテーブルを作成してください。idカラムは主キー(Primary Key)にする必要があります。- 各顧客が固有のメールアドレスを持つように、
customersテーブルのemailカラムにUNIQUE制約を追加してください。
要件
~/projectディレクトリにある SQLite データベースcustomers.dbに接続します。CREATE TABLE文を使用してcustomersテーブルを作成します。idカラムはINTEGER型かつPRIMARY KEYでなければなりません。nameおよびemailカラムはTEXT型である必要があります。emailカラムにUNIQUE制約を実装してください。- すべての 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 コマンドを使用して、テーブルの作成成功と構造の確認を行いました。


