数据库餐厅点菜系统代码
时间: 2023-08-18 18:07:48 浏览: 116
以下是一个简单的数据库餐厅点菜系统代码示例:
1. 数据库设计
我们需要创建三个表:`菜单`,`订单`和`菜品`。
- 菜单表:存储可供点选的菜品信息。
- 订单表:存储顾客点的菜品信息,以及订单号、桌号、总价等信息。
- 菜品表:存储每个菜品的具体信息,如名称、价格、描述等。
下面是数据库设计的SQL代码:
```sql
CREATE TABLE menu (
id INT PRIMARY KEY,
name VARCHAR(50),
price DECIMAL(10,2)
);
CREATE TABLE orders (
id INT PRIMARY KEY,
table_number INT,
total_price DECIMAL(10,2)
);
CREATE TABLE dishes (
id INT PRIMARY KEY,
name VARCHAR(50),
description TEXT,
price DECIMAL(10,2),
menu_id INT,
FOREIGN KEY (menu_id) REFERENCES menu(id),
order_id INT,
FOREIGN KEY (order_id) REFERENCES orders(id)
);
```
2. Python代码
下面是一个简单的Python代码示例,用于与数据库交互:
```python
import mysql.connector
# 连接数据库
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="yourdatabase"
)
# 获取菜单信息
mycursor = mydb.cursor()
mycursor.execute("SELECT * FROM menu")
menu_items = mycursor.fetchall()
# 打印菜单
print("Menu:")
for item in menu_items:
print(item[0], item[1], item[2])
# 获取订单信息
order_id = input("Please enter your order ID: ")
mycursor.execute("SELECT * FROM dishes WHERE order_id = %s", (order_id,))
order_items = mycursor.fetchall()
# 计算总价
total_price = 0
for item in order_items:
total_price += item[3]
# 打印订单
print("Order:")
for item in order_items:
print(item[1], item[3])
print("Total price:", total_price)
```
这个示例代码假设您已经将菜单和订单信息存储在数据库中,并且您已经知道了顾客的订单号。它首先从数据库中获取菜单信息,然后要求用户输入订单号,并从数据库中获取该订单的菜品信息。最后,它计算订单的总价并打印出来。
阅读全文