使用MySQL语言完成上述表格设计
时间: 2024-04-17 19:23:27 浏览: 70
使用MySQL数据库创建表
以下是使用 MySQL 语言完成上述表格设计的示例:
```sql
-- 创建用户信息表
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50) NOT NULL,
password VARCHAR(255) NOT NULL,
phone VARCHAR(20),
email VARCHAR(100)
);
-- 创建餐厅信息表
CREATE TABLE restaurants (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
address VARCHAR(200) NOT NULL,
phone VARCHAR(20),
opening_hours VARCHAR(100)
);
-- 创建菜品信息表
CREATE TABLE dishes (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
price DECIMAL(8, 2) NOT NULL,
description TEXT,
image_url VARCHAR(200)
);
-- 创建订单信息表
CREATE TABLE orders (
id INT AUTO_INCREMENT PRIMARY KEY,
user_id INT NOT NULL,
restaurant_id INT NOT NULL,
dish_id INT NOT NULL,
quantity INT NOT NULL,
total_price DECIMAL(8, 2) NOT NULL,
order_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
status ENUM('pending', 'confirmed', 'cancelled') DEFAULT 'pending',
FOREIGN KEY (user_id) REFERENCES users(id),
FOREIGN KEY (restaurant_id) REFERENCES restaurants(id),
FOREIGN KEY (dish_id) REFERENCES dishes(id)
);
-- 创建支付信息表
CREATE TABLE payments (
id INT AUTO_INCREMENT PRIMARY KEY,
order_id INT NOT NULL,
payment_method VARCHAR(50),
payment_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
amount DECIMAL(8, 2) NOT NULL,
FOREIGN KEY (order_id) REFERENCES orders(id)
);
-- 创建购物车信息表
CREATE TABLE shopping_cart (
id INT AUTO_INCREMENT PRIMARY KEY,
user_id INT NOT NULL,
dish_id INT NOT NULL,
quantity INT NOT NULL,
FOREIGN KEY (user_id) REFERENCES users(id),
FOREIGN KEY (dish_id) REFERENCES dishes(id)
);
```
以上是一个简单的 MySQL 数据库设计示例,你可以根据实际需求进行调整和添加其他字段。
阅读全文