python tkinter mysql实现客户信息管理:该功能可以让用户管理酒店客户的基本信息,如姓名、电话、地址等实例代码
时间: 2024-03-24 17:37:43 浏览: 146
python+mysql+tkinter学生信息管理系统
5星 · 资源好评率100%
好的,下面是一个简单的示例代码,可以让你更好地理解上面提到的思路。但需要注意的是,这只是一个示例,具体实现还需要根据你的实际需求进行调整。
```python
import tkinter as tk
import MySQLdb
# 连接 MySQL 数据库
db = MySQLdb.connect(host='localhost', user='root', password='123456', db='customer_info')
# 创建客户信息表
cursor = db.cursor()
cursor.execute('CREATE TABLE IF NOT EXISTS customer(name VARCHAR(50), phone VARCHAR(20), address VARCHAR(100))')
# 添加客户信息到数据库
def add_customer():
name = name_entry.get()
phone = phone_entry.get()
address = address_entry.get()
cursor.execute('INSERT INTO customer(name, phone, address) VALUES(%s, %s, %s)', (name, phone, address))
db.commit()
# 查询客户信息
def search_customer():
keyword = keyword_entry.get()
cursor.execute('SELECT * FROM customer WHERE name LIKE %s OR phone LIKE %s OR address LIKE %s', (f'%{keyword}%', f'%{keyword}%', f'%{keyword}%'))
results = cursor.fetchall()
if results:
for i, row in enumerate(results):
name_label = tk.Label(result_frame, text=row[0])
name_label.grid(row=i+1, column=0)
phone_label = tk.Label(result_frame, text=row[1])
phone_label.grid(row=i+1, column=1)
address_label = tk.Label(result_frame, text=row[2])
address_label.grid(row=i+1, column=2)
# 创建 GUI 界面
root = tk.Tk()
root.title('客户信息管理')
# 添加客户信息控件
name_label = tk.Label(root, text='姓名:')
name_label.grid(row=0, column=0)
name_entry = tk.Entry(root)
name_entry.grid(row=0, column=1)
phone_label = tk.Label(root, text='电话:')
phone_label.grid(row=1, column=0)
phone_entry = tk.Entry(root)
phone_entry.grid(row=1, column=1)
address_label = tk.Label(root, text='地址:')
address_label.grid(row=2, column=0)
address_entry = tk.Entry(root)
address_entry.grid(row=2, column=1)
add_button = tk.Button(root, text='添加客户', command=add_customer)
add_button.grid(row=3, column=0)
# 查询客户信息控件
keyword_label = tk.Label(root, text='关键字:')
keyword_label.grid(row=4, column=0)
keyword_entry = tk.Entry(root)
keyword_entry.grid(row=4, column=1)
search_button = tk.Button(root, text='查询客户信息', command=search_customer)
search_button.grid(row=5, column=0)
# 显示查询结果
result_frame = tk.Frame(root)
result_frame.grid(row=6, column=0, columnspan=2)
root.mainloop()
```
这段代码实现了一个简单的客户信息管理系统,包含添加客户、查询客户信息等功能。需要注意的是,代码中的数据库连接信息需要根据你的实际情况进行修改。
阅读全文