代码如下:

import tkinter as tk import pymysql

#连接数据库 conn = pymysql.connect(host='localhost',port=3306,user='root',passwd='123456',db='test',charset='utf8') cursor = conn.cursor()

#创建表 sql_create_table = ''' CREATE TABLE IF NOT EXISTS students ( id int(11) NOT NULL AUTO_INCREMENT, name varchar(20) NOT NULL, gender varchar(10) NOT NULL, age int(11) NOT NULL, PRIMARY KEY (id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; ''' cursor.execute(sql_create_table)

#添加学生信息 def add_student(): id = entry_id.get() name = entry_name.get() gender = entry_gender.get() age = entry_age.get() sql_add_student = "INSERT INTO students(name,gender,age) VALUES('{}','{}',{})".format(name,gender,age) cursor.execute(sql_add_student) conn.commit() clear_text() tk.messagebox.showinfo(title='添加成功', message='添加成功')

#查询学生信息 def query_student(): id = entry_id.get() sql_query_student = "SELECT name,gender,age FROM students WHERE id={}".format(id) cursor.execute(sql_query_student) result = cursor.fetchone() if result: entry_name.delete(0, tk.END) entry_name.insert(0, result[0]) entry_gender.delete(0, tk.END) entry_gender.insert(0, result[1]) entry_age.delete(0, tk.END) entry_age.insert(0, result[2]) else: tk.messagebox.showerror(title='查询失败', message='该学号不存在')

#删除学生信息 def delete_student(): id = entry_id.get() sql_delete_student = "DELETE FROM students WHERE id={}".format(id) result = cursor.execute(sql_delete_student) conn.commit() if result: clear_text() tk.messagebox.showinfo(title='删除成功', message='删除成功') else: tk.messagebox.showerror(title='删除失败', message='该学号不存在')

#清空文本框 def clear_text(): entry_id.delete(0, tk.END) entry_name.delete(0, tk.END) entry_gender.delete(0, tk.END) entry_age.delete(0, tk.END)

#创建窗口 win = tk.Tk() win.title('学生信息管理系统') win.geometry('300x200')

#添加控件 label_id = tk.Label(win, text='学号') label_id.grid(row=0, column=0, padx=5, pady=5) entry_id = tk.Entry(win) entry_id.grid(row=0, column=1, padx=5, pady=5)

label_name = tk.Label(win, text='姓名') label_name.grid(row=1, column=0, padx=5, pady=5) entry_name = tk.Entry(win) entry_name.grid(row=1, column=1, padx=5, pady=5)

label_gender = tk.Label(win, text='性别') label_gender.grid(row=2, column=0, padx=5, pady=5) entry_gender = tk.Entry(win) entry_gender.grid(row=2, column=1, padx=5, pady=5)

label_age = tk.Label(win, text='年龄') label_age.grid(row=3, column=0, padx=5, pady=5) entry_age = tk.Entry(win) entry_age.grid(row=3, column=1, padx=5, pady=5)

button_add = tk.Button(win, text='添加', command=add_student) button_add.grid(row=4, column=0, padx=5, pady=5)

button_query = tk.Button(win, text='查询', command=query_student) button_query.grid(row=4, column=1, padx=5, pady=5)

button_delete = tk.Button(win, text='删除', command=delete_student) button_delete.grid(row=4, column=2, padx=5, pady=5)

button_clear = tk.Button(win, text='清除', command=clear_text) button_clear.grid(row=4, column=3, padx=5, pady=5)

win.mainloop()

#关闭数据库连接 cursor.close() conn.close(

编写图形界面应用程序实现学生信息的添加、查询和删除学生信息存储在MySQL数据库中如dstudentsdb文件。要求:1单击添加按钮可以将入框的学号、姓名、性别、年龄信息添加到数据库中。2单击查询根据学号查询对应数据库的学生的信息并显示在文本框。如不存在则弹出提示框。3单击删除根据学号删除该学生在数据库的信息。如该学号不存在则弹出提示框。4单击清除将文本框的内容清空。python

原文地址: http://www.cveoy.top/t/topic/gpbG 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录