How to design a maintainable MySQL table structure to implement the online shopping cart function?
When designing a maintainable MySQL table structure to implement the online shopping cart function, we need to consider the following aspects: shopping cart information, product information, user information and order information. This article details how to design these tables and provides specific code examples.
- Shopping cart information table (cart)
The shopping cart information table is used to store the items added by the user in the shopping cart. The table contains the following fields:
- cart_id: Shopping cart ID as the primary key.
- user_id: User ID, a table used to associate shopping cart information with user information.
- product_id: product ID, a table used to correlate shopping cart information and product information.
- quantity: Product quantity.
- created_at: Creation time.
The following is a code example to create a shopping cart information table:
CREATE TABLE cart (
cart_id INT PRIMARY KEY AUTO_INCREMENT,
user_id INT,
product_id INT,
quantity INT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (user_id) REFERENCES user(user_id),
FOREIGN KEY (product_id) REFERENCES product(product_id)
);
- Product information table (product)
The product information table is used to store product information in the online mall. The table contains the following fields:
- product_id: product ID as the primary key.
- name: product name.
- price: product price.
- description: product description.
The following is a code example for creating a product information table:
CREATE TABLE product (
product_id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(255),
price DECIMAL(10, 2),
description TEXT
);
- User information table (user)
The user information table is used to store user information for the online mall. The table contains the following fields:
- user_id: User ID as the primary key.
- name: User name.
- email: User email.
- password: User password.
The following is a code example for creating a user information table:
CREATE TABLE user (
user_id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(255),
email VARCHAR(255),
password VARCHAR(255)
);
- Order information table (order)
The order information table is used to store order information submitted by users. The table contains the following fields:
- order_id: order ID as the primary key.
- user_id: User ID, a table used to associate order information and user information.
- product_id: product ID, a table used to associate order information and product information.
- quantity: Product quantity.
- total_price: total order price.
- created_at: Creation time.
The following is a code example for creating an order information table:
CREATE TABLE order (
order_id INT PRIMARY KEY AUTO_INCREMENT,
user_id INT,
product_id INT,
quantity INT,
total_price DECIMAL(10, 2),
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (user_id) REFERENCES user(user_id),
FOREIGN KEY (product_id) REFERENCES product(product_id)
);
Through the above table structure design, we can implement a basic online shopping cart function. In actual use, you may need to adjust and expand table fields according to specific needs. Hope this article is helpful to you!
The above is the detailed content of How to design a maintainable MySQL table structure to implement online shopping cart functionality?. For more information, please follow other related articles on the PHP Chinese website!