PyQT5-based student performance management system (simple to run, simple, documented, annotated, and source code included)

My own project, the only CSDN, reprinting is prohibited, student performance management based on pyqt5, with login registration, basic student information addition, modification, deletion, query and course selection, course information addition, modification, deletion, query, grades Add, modify, query and other functions of pycharm, import it with pycharm, install the dependency package, configure the database and then it can run normally, the code inside contains comments, the structure is simple, clear and easy to understand, just look at it, you can base it on this You can do secondary development, and you can chat privately if necessary. The project structure is as follows:

"Student Performance Management System"

--Scheme design specification

Design goals

The software developed by this project is the school’s student information management system software. It is conceived under the background that the school’s requirements for the automation and accuracy of student information management are increasingly strong in view of the rapid increase in the number of students in the school and the explosive growth of student information. Yes, after the software is designed, it can be used for the management of student information in all educational units (including schools, colleges, etc.).

At present, the information management system in the society is developing rapidly, and all enterprises and institutions have introduced information management software to manage their growing various information. The student management system has also been greatly developed, and there are many commercial student information management software. , But this system is completely independently developed, and strives to make the system function concise and clear, but it is fully functional and easy to operate.

Student information management system is an indispensable part of an education unit, and its content is very important for school decision-makers and administrators.

The system has completed the addition, modification, deletion, query and course selection of student information, the addition, modification, deletion, and query of course information, and the addition, modification, and query of grades.

【Keywords】:

Information management system, module design, software engineering.

demand analysis

To sum up the functions of the student information management system, the following aspects are required:

1. Login function

Operators with accounts log in to use the system

2. Student information management

Manage the basic information of all students, including adding, modifying, deleting, etc., and you can also query the required information according to various conditions.

3. Student performance management

According to the student number to register the course scores, you can query the course selection information and results according to the student number.

Function overall design

3.1 Development environment

name

RAM

CPU

Disk

notebook

8 GB

 

The I ntel Core i 5-8250U

2 38.35GB

 

3.2 Tool list

Describe the computer software and version used to run this software, including:

1)  Operating system: Windows

2)  Database system: Mysql

3)  Development platform and tools: PyCharm, Pyqt5

4)  Communication protocol: TCP/IP

5)  Other software: Navicat database connection tool

3.3 Structural design

Structural design, according to the demand analysis of the system, the system will be divided into 5 functional modules:

Module name

description

Login module

Login interface, provide account and password input box.

 

Student Management Module

Manage the basic information of students, provide personal information to add, modify, delete, and add course selection information.

Student Enquiry

Query the basic information of registered students

Performance management

Manage student's grade information for elective courses, including grade registration and modification.

 

Result inquiry

Query the registered score information.

Table Function Module Table

3.4 Functional structure diagram

Module detailed design

4.1 Workflow design

1. Log in

The administrator uses the account and password to log in, and the system verifies the account and password

2. Add student information

The system operator opens the student information adding interface, enters relevant information (name, gender, grade, etc.), and adds relevant data to the database.

3. Modify student information

According to the student's student number, the relevant information of the student can be queried, and the relevant entries will be modified and saved in the database.

4. Delete student information

Find out the relevant information of the student according to the student's student number, and delete the information in the database after confirming the deletion.

5. Students choose courses

Select the student ID and the course to be selected, save it after confirming that it is correct, and the new course selection record will be automatically added to the database.

6. Register your results

According to the student number and the course selected by the student, the grade registration is performed, and the students who are elective will not be able to register.

7. Modify grades

Modify the registered score information.

8. Student inquiry

The student information can be queried according to student ID, student name, student gender, and grade. All student information that meets the query conditions will be displayed.

9. Results query:

According to the student's student number to query the results of all courses of the student.

4.2 database design

4.2.1 Database Design

This system uses the mysql database. Since the amount of data required by this system is not very large, it is easier to choose the mysql database. The database name of this system is studentsys, and the encoding adopts utf8. Use Navicat tool to view, as shown in the figure:

 

4.2.2 Database table design

User Management Form

name

Field Name

type of data

Primary key

non empty

id

Serial number

int

Yes

Yes

password

login password

varchar

No

No

phone

Login account, use mobile phone number

varchar

No

No

Student Management Form

name

Field Name

type of data

Primary key

non empty

id

Serial number

int

Yes

Yes

student_id

student ID

varchar

No

No

name

Name

varchar

No

No

sex

gender

varchar

No

No

age

age

int

No

No

the_class

class

varchar

No

No

Score Management Form

name

Field Name

type of data

Primary key

non empty

id

Serial number

int

Yes

Yes

subject

course

varchar

No

No

score

fraction

varchar

No

No

student_id

student ID

varchar

No

No

student_name

first name

varchar

No

No

4.3 Detailed design

Use PyQT5 to make a GUI interactive interface, including the following 5 functional modules, including login, score management, score query, student management, and student query, which are described below:

1. Log in to the main interface

Receive the entered account and password from the input box, and judge whether it is correct by querying the database. If the account does not exist, it will prompt that the user account does not exist. If the password is incorrect, it will prompt the password is incorrect. If the verification is passed, it will prompt success. page.

Run screenshot:

2. New main interface for results

Enter student ID, name, subject, score, click the submit or modify button to insert or update the data into the database.

Run screenshot:

3. Main interface for score query

Enter student ID, name, and grade interval, and click Query. If the content is not found, a prompt is given. If the query is successful, the data is loaded into the list and displayed on the page.

Run screenshot:

4. New main interface for students

Enter student ID, name, gender, age, class, and click Add/Edit. Then insert or update the data into the database. Click Delete student to delete the student by student ID. If the student does not exist, a prompt will be given.

Run screenshot:

5. Student query main interface

Enter student ID, name, class, and click query. If the content is not found, a prompt is given. If the query is successful, the data is loaded into the list and displayed on the page.

Run screenshot:

There are too many words, so I won’t post it, see the document

Click to download the source code