MySQL テーブル設計ガイド: シンプルな電子メール サブスクリプション テーブルの作成
はじめに:
現代社会では、電子メール サブスクリプション機能は多くの Web サイトの重要な機能の 1 つになっています。電子メール購読を通じて、Web サイトはユーザーに最新ニュース、イベント通知、製品プロモーションなどを送信できます。この機能を実現するには、MySQL を使用して、シンプルだが実用的な電子メール購読フォームを作成します。この記事では、電子メール購読フォームを設計する方法を説明し、対応するコード例を示します。
テーブル設計:
まず、ユーザーのサブスクリプション情報を保存するテーブルを作成する必要があります。テーブルの設計では、次の側面を考慮する必要があります。
CREATE TABLE Subscription ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(50), email VARCHAR(100), status ENUM('active', 'inactive') DEFAULT 'active' );
CREATE TABLE Category ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(50) ); CREATE TABLE SubscriptionCategory ( subscription_id INT, category_id INT, FOREIGN KEY (subscription_id) REFERENCES Subscription(id), FOREIGN KEY (category_id) REFERENCES Category(id), PRIMARY KEY (subscription_id, category_id) );
コード例:
サブスクリプションを追加します。
INSERT INTO Subscription (name, email) VALUES ('John', 'john@example.com');
購読解除:
UPDATE Subscription SET status = 'inactive' WHERE id = 1;
トピック カテゴリの追加:
INSERT INTO Category (name) VALUES ('News'); INSERT INTO Category (name) VALUES ('Events');
購読者のトピック カテゴリを指定:
INSERT INTO SubscriptionCategory (subscription_id, category_id) VALUES (1, 1); INSERT INTO SubscriptionCategory (subscription_id, category_id) VALUES (1, 2);
購読者情報と購読者が購読しているサブジェクト カテゴリをクエリします:
SELECT s.name, s.email, c.name FROM Subscription s INNER JOIN SubscriptionCategory sc ON s.id = sc.subscription_id INNER JOIN Category c ON sc.category_id = c.id;
概要:
この記事の導入を通じて、私たちは次のことを行います。 learn MySQL を使用して簡単な電子メール購読フォームを作成する方法を学びます。合理的なテーブル設計により、データ ストレージ効率とクエリ効率が向上し、システムの安定性と信頼性が向上します。同時に、コード例を提供することで、この購読フォームの操作方法を明確に理解できます。この記事が読者の MySQL データベースの理解と応用に役立つことを願っています。
以上がMySQL テーブル設計ガイド: 単純な電子メール サブスクリプション テーブルの作成の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。