Heim >Datenbank >MySQL-Tutorial >MySQL-Tabellenentwurfspraxis: Erstellen Sie eine Coupon-Tabelle und eine Nutzungsdatensatztabelle

MySQL-Tabellenentwurfspraxis: Erstellen Sie eine Coupon-Tabelle und eine Nutzungsdatensatztabelle

WBOY
WBOYOriginal
2023-07-01 23:33:402289Durchsuche

MySQL-Tabellenentwurfspraxis: Erstellen Sie eine Coupon-Tabelle und eine Nutzungsdatensatztabelle.

In vielen Geschäftsszenarien sind Coupons ein gängiges Werbemittel. Um die Nutzung von Coupons effektiv verwalten und verfolgen zu können, müssen wir eine Coupontabelle und eine Nutzungsdatensatztabelle entwerfen. Dieser Artikel führt Sie durch die Erstellung dieser beiden Tabellen und stellt entsprechende Codebeispiele bereit.

Coupon-Tabellendesign

Zuerst müssen wir eine Coupon-Tabelle erstellen, um alle verfügbaren Coupon-Informationen zu speichern. Das Folgende ist ein einfaches Designbeispiel für eine Coupontabelle:

CREATE TABLE `coupon` (
  `id` INT(11) NOT NULL AUTO_INCREMENT,
  `code` VARCHAR(50) NOT NULL,
  `discount` DECIMAL(10,2) NOT NULL,
  `valid_from` DATETIME NOT NULL,
  `valid_to` DATETIME NOT NULL,
  `created_at` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`),
  UNIQUE KEY `code_UNIQUE` (`code`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

Im obigen Design haben wir die folgenden Felder verwendet:

  • id: die eindeutige Kennung des Coupons, unter Verwendung einer automatisch inkrementierenden Ganzzahl als der Primärschlüssel.
  • id:优惠券的唯一标识,使用自增整数作为主键。
  • code:优惠券的代码,通常是一串字符或数字。
  • discount:优惠券的折扣金额或折扣比例。
  • valid_from:优惠券的有效开始日期和时间。
  • valid_to:优惠券的有效结束日期和时间。
  • created_at:优惠券的创建时间,使用MySQL的CURRENT_TIMESTAMP函数自动生成。

使用记录表设计

接下来,我们需要创建一张使用记录表,用于记录每个优惠券的使用情况。以下是一个基本的使用记录表设计示例:

CREATE TABLE `coupon_usage` (
  `id` INT(11) NOT NULL AUTO_INCREMENT,
  `coupon_id` INT(11) NOT NULL,
  `user_id` INT(11) NOT NULL,
  `used_at` DATETIME NOT NULL,
  PRIMARY KEY (`id`),
  KEY `coupon_id_idx` (`coupon_id`),
  KEY `user_id_idx` (`user_id`),
  CONSTRAINT `coupon_id_fk` FOREIGN KEY (`coupon_id`) REFERENCES `coupon` (`id`),
  CONSTRAINT `user_id_fk` FOREIGN KEY (`user_id`) REFERENCES `user` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

在上面的设计中,我们使用了以下字段:

  • id:使用记录的唯一标识,使用自增整数作为主键。
  • coupon_id:优惠券的ID,与优惠券表中的id字段相对应。
  • user_id:使用优惠券的用户的ID。
  • used_at:优惠券的使用时间。

为了确保数据的一致性和完整性,我们还创建了两个外键约束,将coupon_id字段与coupon表中的id字段关联起来,将user_id字段与user表中的idcode: Der Code des Gutscheins, normalerweise eine Zeichenfolge aus Zeichen oder Zahlen.

Rabatt: Der Rabattbetrag oder das Rabattverhältnis des Coupons.

valid_from: Datum und Uhrzeit des Beginns der Gültigkeit des Gutscheins.

valid_to: Datum und Uhrzeit des Gültigkeitsendes des Gutscheins.

created_at: Die Erstellungszeit des Coupons, automatisch generiert mit der MySQL-Funktion CURRENT_TIMESTAMP.

Entwurf der Nutzungsdatensatztabelle

Als nächstes müssen wir eine Nutzungsdatensatztabelle erstellen, um die Nutzung jedes Coupons aufzuzeichnen. Das Folgende ist ein einfaches Beispiel für die Verwendung eines Datensatztabellenentwurfs: 🎜rrreee🎜Im obigen Entwurf haben wir die folgenden Felder verwendet: 🎜🎜🎜id: Verwenden Sie die eindeutige Kennung des Datensatzes mit einem Auto -Inkrementierende Ganzzahl als Primärschlüssel. 🎜coupon_id: Die ID des Coupons, entsprechend dem Feld id in der Coupontabelle. 🎜user_id: Die ID des Benutzers, der den Coupon verwendet hat. 🎜used_at: Die Nutzungsdauer des Gutscheins. 🎜Um die Konsistenz und Integrität der Daten sicherzustellen, haben wir außerdem zwei Fremdschlüsseleinschränkungen erstellt, die das Feld coupon_id mit dem Feld coupon verbinden Tabelle Verknüpfen Sie das Feld id und das Feld user_id mit dem Feld id in der Tabelle user. Dadurch wird sichergestellt, dass jeder Nutzungsdatensatz gültig ist. 🎜🎜Mit dem oben genannten Tabellendesign können wir die Verwendung von Gutscheinen einfach verwalten und verfolgen. Sie können die Tabelle entsprechend den tatsächlichen Anforderungen erweitern und optimieren, um sie an verschiedene Geschäftsszenarien anzupassen. 🎜🎜Zusammenfassung🎜🎜In diesem Artikel zeigen wir den Lesern die Designideen eines vollständigen Coupon-Managementsystems, indem wir eine Coupon-Tabelle erstellen und das MySQL-Tabellendesign der Datensatztabelle verwenden. Durch ein vernünftiges Tabellenstrukturdesign und Fremdschlüsseleinschränkungen können wir die Verwendung von Gutscheinen effektiv verwalten und verfolgen. Ich hoffe, dass dieser Artikel den Lesern bei der tatsächlichen Entwicklung hilfreich sein wird. 🎜

Das obige ist der detaillierte Inhalt vonMySQL-Tabellenentwurfspraxis: Erstellen Sie eine Coupon-Tabelle und eine Nutzungsdatensatztabelle. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn