python tkinter mysql实现订房信息管理:该功能可以让用户管理酒店客房的订房信息,包括订房管理、退房管理和订房情况查询等实例代码
时间: 2024-03-25 14:38:38 浏览: 60
基于Python+tkinter+MySQL的图书管理系统+设计报告+PPT(课程设计高分项目).zip
5星 · 资源好评率100%
很高兴为您解答这个问题。以下是一个简单的python tkinter mysql实现订房信息管理的示例代码:
```
import tkinter as tk
import mysql.connector
# 建立MySQL连接
mydb = mysql.connector.connect(
host="localhost",
user="yourusername",
password="yourpassword",
database="yourdatabase"
)
# 创建一个窗口
root = tk.Tk()
root.title("订房信息管理")
# 添加标签和输入框
label_room = tk.Label(root, text="房间号:")
label_room.grid(row=0, column=0)
entry_room = tk.Entry(root)
entry_room.grid(row=0, column=1)
label_name = tk.Label(root, text="姓名:")
label_name.grid(row=1, column=0)
entry_name = tk.Entry(root)
entry_name.grid(row=1, column=1)
label_phone = tk.Label(root, text="电话:")
label_phone.grid(row=2, column=0)
entry_phone = tk.Entry(root)
entry_phone.grid(row=2, column=1)
# 添加订房按钮
def book_room():
room = entry_room.get()
name = entry_name.get()
phone = entry_phone.get()
# 在MySQL数据库中插入订房信息
mycursor = mydb.cursor()
sql = "INSERT INTO bookings (room, name, phone) VALUES (%s, %s, %s)"
val = (room, name, phone)
mycursor.execute(sql, val)
mydb.commit()
# 清除输入框
entry_room.delete(0, tk.END)
entry_name.delete(0, tk.END)
entry_phone.delete(0, tk.END)
button_book = tk.Button(root, text="订房", command=book_room)
button_book.grid(row=3, column=0)
# 添加退房按钮
def cancel_booking():
room = entry_room.get()
# 从MySQL数据库中删除订房信息
mycursor = mydb.cursor()
sql = "DELETE FROM bookings WHERE room = %s"
val = (room,)
mycursor.execute(sql, val)
mydb.commit()
# 清除输入框
entry_room.delete(0, tk.END)
entry_name.delete(0, tk.END)
entry_phone.delete(0, tk.END)
button_cancel = tk.Button(root, text="退房", command=cancel_booking)
button_cancel.grid(row=3, column=1)
# 添加查询按钮
def show_bookings():
# 从MySQL数据库中获取所有订房信息
mycursor = mydb.cursor()
mycursor.execute("SELECT * FROM bookings")
myresult = mycursor.fetchall()
# 创建一个新窗口显示订房信息
window_bookings = tk.Toplevel(root)
for index, row in enumerate(myresult):
label = tk.Label(window_bookings, text=f"{index+1}. 房间号:{row[0]}, 姓名:{row[1]}, 电话:{row[2]}")
label.pack()
button_show = tk.Button(root, text="查询订房情况", command=show_bookings)
button_show.grid(row=4, column=0, columnspan=2)
root.mainloop()
```
在这个示例中,我们使用了MySQL数据库来存储订房信息。我们在窗口中添加了标签和输入框,让用户输入房间号、姓名和电话。然后,我们添加了订房、退房和查询按钮。当用户点击订房按钮时,程序将订房信息插入到MySQL数据库中。当用户点击退房按钮时,程序将从MySQL数据库中删除对应的订房信息。当用户点击查询按钮时,程序将从MySQL数据库中获取所有订房信息,并在一个新窗口中显示出来。
请注意,为了运行这个示例,您需要安装MySQL连接器(`pip install mysql-connector-python`)。另外,您需要将`yourusername`、`yourpassword`和`yourdatabase`替换为您自己的MySQL用户名、密码和数据库名。
阅读全文