学生管理系统是一种管理学生信息的工具,可以用来管理学生的基本信息、课程信息、考试成绩等。本文利用 Python 编程语言和 MySQL 数据库,建立了一套简单的学生管理系统。

一、需求分析

学生管理系统应该具备以下功能:

1、学生信息管理:包括学生基本信息、课程信息、考试成绩等。

2、课程管理:包括课程名称、课程编号、授课教师、授课时间等。

3、成绩管理:包括学生考试成绩录入、成绩查询、成绩统计等。

二、技术选型

Python 是一种简单易学的编程语言,具有开源、跨平台、易读易写等优势,适合快速开发小型应用程序。MySQL 是一种常用的关系型数据库,具有开源、高性能、安全稳定等特点,适合存储大量数据。

三、系统设计

1、数据库设计

本系统包含三个表:学生表、课程表和成绩表。学生表包含学生基本信息,课程表包含课程信息,成绩表包含学生考试成绩信息。三个表之间通过外键关联。

2、程序设计

本系统采用面向对象编程思想,包含学生类、课程类和成绩类,通过类的方法实现系统功能。程序中使用 pymysql 库连接 MySQL 数据库,通过 SQL 语句实现数据的增加、删除、修改和查询等操作。

四、系统实现

1、数据库连接

使用 pymysql 库连接 MySQL 数据库,示例代码如下:

import pymysql

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

# 创建游标
cursor = db.cursor()

2、数据增加

使用 SQL 语句实现数据的增加,示例代码如下:

# 学生表插入数据
sql = "insert into student (id, name, age, gender, major) values ('1001', '张三', 20, '男', '计算机科学')"
cursor.execute(sql)
db.commit()

# 课程表插入数据
sql = "insert into course (id, name, teacher, time) values ('C001', '高等数学', '李老师', '周一第1、2节')"
cursor.execute(sql)
db.commit()

# 成绩表插入数据
sql = "insert into score (sid, cid, score) values ('1001', 'C001', 85)"
cursor.execute(sql)
db.commit()

3、数据查询

使用 SQL 语句实现数据的查询,示例代码如下:

# 查询学生表所有数据
sql = "select * from student"
cursor.execute(sql)
results = cursor.fetchall()
for row in results:
   id = row[0]
   name = row[1]
   age = row[2]
   gender = row[3]
   major = row[4]
   print("id=%s,name=%s,age=%d,gender=%s,major=%s" % (id, name, age, gender, major))

# 查询课程表所有数据
sql = "select * from course"
cursor.execute(sql)
results = cursor.fetchall()
for row in results:
   id = row[0]
   name = row[1]
   teacher = row[2]
   time = row[3]
   print("id=%s,name=%s,teacher=%s,time=%s" % (id, name, teacher, time))

# 查询成绩表所有数据
sql = "select * from score"
cursor.execute(sql)
results = cursor.fetchall()
for row in results:
   sid = row[0]
   cid = row[1]
   score = row[2]
   print("sid=%s,cid=%s,score=%d" % (sid, cid, score))

4、数据修改

使用 SQL 语句实现数据的修改,示例代码如下:

# 修改学生表数据
sql = "update student set age = 21 where id='1001'"
cursor.execute(sql)
db.commit()

# 修改成绩表数据
sql = "update score set score = 90 where sid='1001' and cid='C001'"
cursor.execute(sql)
db.commit()

5、数据删除

使用 SQL 语句实现数据的删除,示例代码如下:

# 删除学生表数据
sql = "delete from student where id='1001'"
cursor.execute(sql)
db.commit()

# 删除成绩表数据
sql = "delete from score where sid='1001' and cid='C001'"
cursor.execute(sql)
db.commit()

五、系统测试

编写测试程序,测试系统功能是否正常。

1、测试数据增加功能,插入一条学生信息、一条课程信息和一条成绩信息。

2、测试数据查询功能,查询学生表、课程表和成绩表所有数据。

3、测试数据修改功能,修改学生表和成绩表数据。

4、测试数据删除功能,删除学生表和成绩表数据。

六、总结

本文利用 Python 编程语言和 MySQL 数据库,建立了一套简单的学生管理系统,包含学生信息管理、课程管理和成绩管理等功能。通过本文的学习,可以了解 Python 和 MySQL 的基本操作,学习如何使用 Python 编写数据库应用程序。

基于 Python 和 MySQL 的学生管理系统设计与实现

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

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