Maison > base de données > tutoriel mysql > le corps du texte

Comment créer un tableau de détails de commande pour un système d'épicerie dans MySQL

WBOY
Libérer: 2023-11-01 08:17:03
original
878 Les gens l'ont consulté

Comment créer un tableau de détails de commande pour un système dépicerie dans MySQL

Comment créer une table de détails de commande pour un système d'épicerie dans MySQL

Lors du développement d'un système d'épicerie, la table des détails de commande est une table de données très importante. Il enregistre les détails du produit dans chaque commande, y compris l'identifiant du produit, la quantité, le prix et d'autres informations. Cet article explique comment créer une table de détails de commande pour le système d'épicerie dans MySQL et joint des exemples de code spécifiques.

  1. Créer une base de données et des tables de données

Tout d'abord, créez une base de données nommée buy_vegetables dans MySQL. Vous pouvez utiliser la commande suivante : buy_vegetables的数据库。可以使用以下命令:

CREATE DATABASE buy_vegetables;
Copier après la connexion

然后,选择该数据库:

USE buy_vegetables;
Copier après la connexion

接下来,创建订单明细表order_items。该表包含以下字段:

  • id:订单明细ID,为自增主键
  • order_id:订单ID,与订单表中的订单ID关联
  • product_id:商品ID,与商品表中的商品ID关联
  • quantity:商品数量
  • price:商品单价

可以使用以下代码创建order_items表:

CREATE TABLE order_items (
  id INT AUTO_INCREMENT PRIMARY KEY,
  order_id INT,
  product_id INT,
  quantity INT,
  price DECIMAL(10, 2)
);
Copier après la connexion
  1. 添加外键约束

为了确保关联的完整性,可以为order_idproduct_id字段添加外键约束。首先,创建orders表和products表,然后分别添加外键约束。

  • 创建orders表,包含以下字段:

    • id:订单ID,为自增主键
    • customer_id:客户ID,与客户表中的客户ID关联
    • order_date:订单日期

    可以使用以下代码创建orders表:

    CREATE TABLE orders (
      id INT AUTO_INCREMENT PRIMARY KEY,
      customer_id INT,
      order_date DATE
    );
    Copier après la connexion
  • 创建products表,包含以下字段:

    • id:商品ID,为自增主键
    • name:商品名称
    • price:商品价格

    可以使用以下代码创建products表:

    CREATE TABLE products (
      id INT AUTO_INCREMENT PRIMARY KEY,
      name VARCHAR(255),
      price DECIMAL(10, 2)
    );
    Copier après la connexion
  • 添加外键约束,使用以下代码:

    ALTER TABLE order_items
    ADD CONSTRAINT fk_order_items_orders
    FOREIGN KEY (order_id) REFERENCES orders(id),
    ADD CONSTRAINT fk_order_items_products
    FOREIGN KEY (product_id) REFERENCES products(id);
    Copier après la connexion
  1. 插入数据示例

为了演示订单明细表的用法,以下是一个示例插入数据的SQL语句示例:

INSERT INTO orders (customer_id, order_date)
VALUES (1, '2021-01-01');

INSERT INTO products (name, price)
VALUES ('苹果', 5.99),
       ('橙子', 4.99);

INSERT INTO order_items (order_id, product_id, quantity, price)
VALUES (1, 1, 2, 11.98),
       (1, 2, 3, 14.97);
Copier après la connexion

以上代码向orders表和products表插入了一些示例数据,并将订单明细插入到order_itemsrrreee

Ensuite, sélectionnez la base de données :

rrreee

Ensuite, créez la table des détails de la commande order_items. La table contient les champs suivants :

    id : ID de détail de la commande, qui est une clé primaire à incrémentation automatique 🎜🎜order_id : ID de commande, associé au ID de commande dans le tableau des commandes 🎜🎜product_id : ID du produit, associé à l'ID du produit dans le tableau des produits 🎜🎜quantité : quantité du produit 🎜🎜prix code> : prix unitaire du produit🎜🎜Vous pouvez utiliser le code suivant pour créer la table <code>order_items : 🎜rrreee
      🎜Ajouter des contraintes de clé étrangère🎜🎜🎜Pour Pour garantir l'intégrité de l'association, vous pouvez order_id Ajouter des contraintes de clé étrangère aux champs et product_id. Commencez par créer la table orders et la table products, puis ajoutez respectivement des contraintes de clé étrangère. 🎜
      🎜🎜Créez la table orders, comprenant les champs suivants : 🎜
        🎜id : ID de commande, qui est une clé primaire auto-incrémentée🎜🎜 customer_idcode> : ID client, associé à l'ID client dans la table client 🎜🎜order_date : Date de commande🎜
      🎜Les commandes peut être créée à l'aide du code suivant : 🎜rrreee 🎜🎜🎜Créez la table products, comprenant les champs suivants : 🎜
        🎜id : ID du produit, qui est une clé primaire auto-incrémentée 🎜🎜name : Nom du produit 🎜🎜prix : Prix du produit 🎜
      🎜Vous pouvez utiliser le code suivant pour créer le products : 🎜rrreee🎜🎜🎜Ajoutez des contraintes de clé étrangère, utilisez le code suivant : 🎜rrreee🎜
      🎜Exemple d'insertion de données🎜🎜🎜Pour démontrer l'utilisation de la table des détails de la commande, voici un exemple d'instruction SQL pour insérer des données : 🎜rrreee🎜Le code ci-dessus va à Certains exemples de données sont insérés dans la table des commandes et la table produits , et les détails de la commande sont insérés dans la table order_items. 🎜🎜Résumé🎜🎜Cet article explique comment créer la table des détails de la commande du système d'épicerie dans MySQL, y compris la création d'une base de données, d'une table de données et l'ajout de contraintes de clé étrangère. Il fournit également des exemples d'insertion de données pour faciliter la compréhension et la pratique des développeurs. La conception et l'utilisation du tableau des détails de la commande constituent un maillon important dans le développement du système d'épicerie. Grâce à une structure de table raisonnable et à des contraintes de clé étrangère, l'intégrité des données de commande peut être garantie. J'espère que cet article sera utile aux développeurs développant des systèmes d'épicerie. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!