在tkinter中实现以下功能:创建数据库,对输入的数据进行搜索,如果数据库中没有该数据则添加该数据,反之则删除该数据
时间: 2023-12-03 18:42:17 浏览: 81
好的,下面是一个简单的示例程序,包含创建数据库、搜索、添加和删除数据的功能:
```python
import sqlite3
import tkinter as tk
# 连接数据库
conn = sqlite3.connect('data.db')
cur = conn.cursor()
# 创建数据表
cur.execute('''CREATE TABLE IF NOT EXISTS data
(id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL)''')
conn.commit()
# 创建GUI界面
root = tk.Tk()
root.title('数据管理')
# 创建搜索框和添加/删除按钮
search_entry = tk.Entry(root, width=30)
search_entry.pack(pady=10)
add_button = tk.Button(root, text='添加', width=10)
add_button.pack(side=tk.LEFT, padx=10)
delete_button = tk.Button(root, text='删除', width=10)
delete_button.pack(side=tk.RIGHT, padx=10)
# 定义函数:搜索数据
def search_data():
name = search_entry.get()
cur.execute("SELECT * FROM data WHERE name=?", (name,))
result = cur.fetchone()
if result:
print('找到数据:', result)
else:
print('没有找到数据')
# 定义函数:添加数据
def add_data():
name = search_entry.get()
cur.execute("INSERT INTO data (name) VALUES (?)", (name,))
conn.commit()
print('添加数据成功')
# 定义函数:删除数据
def delete_data():
name = search_entry.get()
cur.execute("DELETE FROM data WHERE name=?", (name,))
conn.commit()
print('删除数据成功')
# 绑定按钮事件
add_button.config(command=add_data)
delete_button.config(command=delete_data)
# 运行主循环
root.mainloop()
# 关闭数据库连接
cur.close()
conn.close()
```
在这个程序中,我们使用了 tkinter 来创建一个简单的GUI界面。搜索框用于输入要搜索/添加/删除的数据,添加和删除按钮分别对应 add_data() 和 delete_data() 函数,这两个函数分别执行插入和删除操作。在每个操作中,我们都使用 SQLite3 的语法来操作数据库,最后通过 conn.commit() 来提交更改。运行程序时,可以输入任意字符串来测试功能。
阅读全文