帮我生成一个小程序点餐系统的数据库代码
时间: 2024-12-25 18:25:29 浏览: 5
创建一个小程序点餐系统的数据库通常涉及到几个关键表的设计,这里提供一个简化的MySQL数据库代码示例。我们将设计菜品、菜单分类、订单和用户等基本表:
```sql
-- 菜品表 (menu_items)
CREATE TABLE menu_items (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
category_id INT,
price DECIMAL(10, 2),
image_url VARCHAR(255),
description TEXT
);
-- 菜品类别表 (categories)
CREATE TABLE categories (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50) NOT NULL
);
-- 关联菜品和类别 (menu_item_category)
CREATE TABLE menu_item_category (
item_id INT,
category_id INT,
FOREIGN KEY (item_id) REFERENCES menu_items(id),
FOREIGN KEY (category_id) REFERENCES categories(id)
);
-- 订单表 (orders)
CREATE TABLE orders (
id INT AUTO_INCREMENT PRIMARY KEY,
user_id INT,
order_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
total_amount DECIMAL(10, 2),
status ENUM('pending', 'processing', 'completed') NOT NULL DEFAULT 'pending'
);
-- 用户表 (users)
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
nickname VARCHAR(50),
phone_number VARCHAR(20),
email VARCHAR(100)
);
-- 订单详情表 (order_details)
CREATE TABLE order_details (
order_id INT,
item_id INT,
quantity INT,
FOREIGN KEY (order_id) REFERENCES orders(id),
FOREIGN KEY (item_id) REFERENCES menu_items(id)
);
```
这个例子包含了菜品、类别、订单、用户以及订单详情的表结构。请注意,实际应用可能需要更多的字段和复杂的关系来处理如优惠券、评价等。
阅读全文