已解决
python PyQt5 MySQL GUI 学生信息管理系统
来自网友在路上 188888提问 提问时间:2023-11-04 19:14:28阅读次数: 88
最佳答案 问答题库888位专家为你答疑解惑
学生信息管理系统
本系统使用python,pyqt5,数据库使用MySQL,实现windowsGUI应用。
python使用pymysql模块操作数据库代码
import pymysqldef handle_db(cmd, sql):result = None# print(f" sql {sql}")# 连接数据库conn = pymysql.connect(host='localhost',user='xxx',password='xxxxx',database='student_manager_system',port=3306,charset='utf8mb4')# 创建游标cursor = conn.cursor()# 执行 SQL 语句cursor.execute(sql)# 获取查询结果if cmd == "select":result = cursor.fetchall()print(f"result db {result} {type(result)}")elif cmd == "insert":rowcount = cursor.rowcountif rowcount > 0:# print("插入成功!")result = Trueelse:# print("插入失败!")result = False# 提交事务conn.commit()elif cmd == "delete":rowcount = cursor.rowcountif rowcount > 0:result = Trueelse:result = False# 提交事务conn.commit()elif cmd == "update":rowcount = cursor.rowcountif rowcount > 0:result = Trueelse:result = False# 提交事务conn.commit()# 关闭游标和连接cursor.close()conn.close()return resultdef insert_data(arg):lineEdit, lineEdit2, lineEdit3, lineEdit4, lineEdit5, lineEdit6, lineEdit7 = arg# 检查学号是否重复check_sql = f"select * from student_manager where s_number={lineEdit2}"print(f"check sql is : {check_sql}")result = handle_db("select", check_sql)if result:return False, "学号重复"sql = f"insert into student_manager values ('{lineEdit}', '{lineEdit2}', '{lineEdit3}', " \f"'{lineEdit4}', '{lineEdit5}', '{lineEdit6}', '{lineEdit7}')"print(f"insert sql is : {sql}")result = handle_db("insert", sql)print(f"result {result}")if result:return True, ""else:return False, "学生信息插入到数据库失败,请检查数据库"def select_data():sql = "select * from student_manager"print(f"select data sql is : {sql}")result = handle_db("select", sql)# print(f"result {result}")return resultdef delete_data(num):sql = f"delete from student_manager where s_number='{num}'"print(f"delete data sql is : {sql}")result = handle_db("delete", sql)# print(f"result {result}")return resultdef update_data(arg):lineEdit, lineEdit2, lineEdit3, lineEdit4, lineEdit5, lineEdit6, lineEdit7 = arg# 检查学号是否重复check_sql = f"select * from student_manager where s_number={lineEdit2}"print(f"check update sql is : {check_sql}")result = handle_db("select", check_sql)if not result:return False, "该学生学号不存在"sql = f"update student_manager set name='{lineEdit}', sex='{lineEdit3}', age='{lineEdit4}'," \f"grade='{lineEdit5}', class='{lineEdit6}', remark='{lineEdit7}' where s_number='{lineEdit2}'"print(f"update data sql is : {sql}")result = handle_db("update", sql)# print(f"result {result}")if result:return True, ""else:return False, "学生信息修改到数据库失败,请检查数据库"
需要全部代码请私信
少年易老学难成,一寸光阴不可轻。
查看全文
99%的人还看了
相似问题
猜你感兴趣
版权申明
本文"python PyQt5 MySQL GUI 学生信息管理系统":http://eshow365.cn/6-32095-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!
- 上一篇: 计算两个时间的时间差(天、时、分、秒)
- 下一篇: 第二十六章 BEV感知系列三(车道线感知)