「ワークショップの申込を正しく保つ」は、基本的な SQL を知っている学習者向けの MySQL 実践プロジェクトです。修理ワークショップの受付を使える状態に保ちながら、重複申込、存在しない参照、不正なグループ人数を拒否し、既存のメモを残します。
1 つのガイド付き実習では、通常の申込から始め、取り消せる試行で不足するデータベースルールを確認してから、既存のテーブルを保護します。独立したチャレンジでは、ボランティアのシフト登録に対象を変えます。各単元には独立した準備済みデータベースとクライアントがあります。
学習内容
- 名前ではなく、人と開催回の関係で申込を識別する。
- 複合一意ルールで、同姓同名の別人や別の開催回への正当な申込を許可する。
- NOT NULL、CHECK、外部キーを組み合わせて異なる不正な書き込みを拒否する。
- 参照されるレコードを守りつつ、未使用の開催回は削除可能に保つ。
- 1 回適用する ALTER TABLE 移行を保存し、スキーマのコミットと取り消せるデータ試行を区別する。
- 通常の受付クライアントと直接の SQL 書き込みの両方をデータベースルールで保護する。
このコースの対象者
基本的なターミナル操作と MySQL の SELECT、INSERT、UPDATE を知っている初学者向けです。制約、関係、ALTER TABLE、トランザクションを使う試行は、使用前に説明します。
準備済み環境: ブラウザーの Terminal に MySQL、架空の申込データ、小さなコマンドライン受付が用意されています。サーバーのインストール、Python の記述、Web サイトの作成は不要です。クライアントのラベル、レコード、データベースのエラーは英語のままです。
よくある質問
クラウドデータベースや自分のデータが必要ですか?
不要です。各単元に独立した登録データと準備済みクライアントがあります。
クライアントだけでなくデータベースを守るのはなぜですか?
別のクライアントは直接書き込めます。通常の申込を維持しながら、MySQL 自体に許可された関係を適用させます。
チャレンジでは何が変わりますか?
ボランティア、シフト、参照列、既存の関係が変わります。学んだ仕組みを独立して適用し、新しい登録簿の元の情報を保全します。
定員の競合や本番移行を解決しますか?
いいえ。人数は正である必要がありますが、限られた定員の割り当てや同時申込は実装しません。移行は 1 回適用する DDL であり、オンラインデプロイやバックアップの仕組みではありません。



