怎样制作一个python程序的学生信息管理系统,并且连接数据库
时间: 2024-03-11 18:50:00 浏览: 53
基于python实现学生信息管理系统
5星 · 资源好评率100%
要制作一个Python程序的学生信息管理系统并连接数据库,可以按照以下步骤进行:
1. 安装Python和所需的第三方库,如pymysql和tkinter。
2. 创建一个数据库,并创建一个名为“students”的表,表中包含学生的姓名、年龄、性别和学号等信息。
3. 编写Python程序,使用pymysql连接数据库,并使用tkinter创建图形化界面。
4. 在程序中实现对学生信息的增删改查等功能,例如添加学生信息、删除学生信息、修改学生信息和查询学生信息等。
以下是一个简单的示例代码,供参考:
```
import pymysql
import tkinter as tk
# 连接数据库
conn = pymysql.connect(host='localhost', port=3306, user='root', password='123456', db='testdb', charset='utf8mb4')
cursor = conn.cursor()
# 创建图形化界面
window = tk.Tk()
window.title('学生信息管理系统')
window.geometry('400x300')
# 添加学生信息
def add_student():
name = name_entry.get()
age = age_entry.get()
gender = gender_entry.get()
student_id = student_id_entry.get()
sql = "INSERT INTO students (name, age, gender, student_id) VALUES (%s, %s, %s, %s)"
cursor.execute(sql, (name, age, gender, student_id))
conn.commit()
# 删除学生信息
def delete_student():
student_id = student_id_entry.get()
sql = "DELETE FROM students WHERE student_id = %s"
cursor.execute(sql, student_id)
conn.commit()
# 修改学生信息
def update_student():
name = name_entry.get()
age = age_entry.get()
gender = gender_entry.get()
student_id = student_id_entry.get()
sql = "UPDATE students SET name = %s, age = %s, gender = %s WHERE student_id = %s"
cursor.execute(sql, (name, age, gender, student_id))
conn.commit()
# 查询学生信息
def query_student():
student_id = student_id_entry.get()
sql = "SELECT * FROM students WHERE student_id = %s"
cursor.execute(sql, student_id)
result = cursor.fetchone()
name_entry.delete(0, tk.END)
age_entry.delete(0, tk.END)
gender_entry.delete(0, tk.END)
name_entry.insert(0, result[0])
age_entry.insert(0, result[1])
gender_entry.insert(0, result[2])
# 创建标签和输入框
name_label = tk.Label(window, text='姓名:')
name_label.pack()
name_entry = tk.Entry(window)
name_entry.pack()
age_label = tk.Label(window, text='年龄:')
age_label.pack()
age_entry = tk.Entry(window)
age_entry.pack()
gender_label = tk.Label(window, text='性别:')
gender_label.pack()
gender_entry = tk.Entry(window)
gender_entry.pack()
student_id_label = tk.Label(window, text='学号:')
student_id_label.pack()
student_id_entry = tk.Entry(window)
student_id_entry.pack()
# 创建按钮
add_button = tk.Button(window, text='添加', command=add_student)
add_button.pack()
delete_button = tk.Button(window, text='删除', command=delete_student)
delete_button.pack()
update_button = tk.Button(window, text='修改', command=update_student)
update_button.pack()
query_button = tk.Button(window, text='查询', command=query_student)
query_button.pack()
# 运行程序
window.mainloop()
# 关闭数据库连接
cursor.close()
conn.close()
```
在上面的代码中,使用了tkinter库创建了一个图形化界面,并使用pymysql库连接数据库。在界面中添加了四个输入框用于输入学生信息,以及四个按钮用于对学生信息进行增删改查操作。在点击按钮后,程序会执行相应的SQL语句对数据库进行操作。在程序结束时,需要关闭数据库连接。
阅读全文