Maison > Article > base de données > 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.
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;
然后,选择该数据库:
USE buy_vegetables;
接下来,创建订单明细表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) );
为了确保关联的完整性,可以为order_id
和product_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 );
创建products
表,包含以下字段:
id
:商品ID,为自增主键name
:商品名称price
:商品价格可以使用以下代码创建products
表:
CREATE TABLE products ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), price DECIMAL(10, 2) );
添加外键约束,使用以下代码:
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);
为了演示订单明细表的用法,以下是一个示例插入数据的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);
以上代码向orders
表和products
表插入了一些示例数据,并将订单明细插入到order_items
rrreee
rrreee
Ensuite, créez la table des détails de la commandeorder_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
: 🎜rrreeeorder_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. 🎜orders
, comprenant les champs suivants : 🎜id
: ID de commande, qui est une clé primaire auto-incrémentée🎜🎜 customer_id
code> : ID client, associé à l'ID client dans la table client 🎜🎜order_date
: Date de commande🎜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 🎜 products
: 🎜rrreee🎜🎜🎜Ajoutez des contraintes de clé étrangère, utilisez le code suivant : 🎜rrreee🎜 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!