C#毕业设计——基于C#+asp.net+sqlserver的学生成绩管理系统设计与实现(毕业论文+程序源码)——成绩管理系统

基于C#+asp.net+sqlserver的学生成绩管理系统设计与实现(毕业论文+程序源码)

大家好,今天给大家介绍基于C#+asp.net+sqlserver的学生成绩管理系统设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦。需要下载开题报告PPT模板及论文答辩PPT模板等的小伙伴,可以进入我的博客主页查看左侧最下面栏目中的自助下载方法哦

文章目录:

  • 基于C#+asp.net+sqlserver的学生成绩管理系统设计与实现(毕业论文+程序源码)
    • 1、项目简介
    • 2、资源详情
    • 3、关键词:
    • 4、毕设简介
    • 5、资源下载

1、项目简介

  1. 本毕业设计所描述的中学学生成绩管理系统是采用ASP.NET作为网络编程框架,SQL Server 作为数据库编写的一个B/S模式的系统。系统主要实现了:用户管理、成绩查询、成绩管理和科目管理等功能。本文详细介绍了中学学生成绩管理系统的需求分析、功能设计和系统设计,在系统设计中给出数据库的设计和本系统的总体设计方案,在系统实现中具体介绍了各个功能的所能实现的情况和主要代码,同时附有运行界面图。

2、资源详情

项目难度:中等难度
适用场景:相关题目的毕业设计
配套论文字数:8622个字25页
包含内容:整套源码+完整毕业论文


3、关键词:

成绩管理;成绩录入;成绩查询;.NET ;B/S;

4、毕设简介

提示:以下为毕业论文的简略介绍,项目源码及完整毕业论文下载地址见文末。

引言
省略

1.1相关理论技术基础
1.1. 1 B/S结构
由于互联网的发展,传统的C/S模式由于成本高以及维护复杂性已经较少见应用,而应用互联网技术的B/S模式正如日中天,加上我们已建和再建的设备,我们完全可以利用校园网取代以往传统的有纸方式.B/S模式易于学习,易于实现,完全可以开发出更好更全面的管理系统.

B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓3-tier结构。B/S结构利用不断成熟和普及的浏览器技术实现原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。这种结构更成为当今应用软件的首选体系结构,Microsoft.net也是在这样一种背景下被提出来的架构.

B/S具备了很好的移动性,确保不同的使用者都能以最佳的方式来使用所需的系统,普通使用者只需要使用浏览器就可以在任何地方通过身份权限确认后就可以进行相关操作,极大的发挥了B/S结构的优点。同时支持跨平台管理,不论是什么平台,只要装有Web浏览器即可;分部无需安装和维护软件;可通过局域或者广域网实时监控和管理;支持Internet组网方式.

1.1. 2 SQL Serve
Sqlserver是基于Sql客户/服务器模式的数据库系统,图形化界面使数据库管理更加简捷、灵活,同时又具有丰富的编程接口,为用户从事程序开发提供了更多的方便.

省略

总之,Sqlserver在硬件、软件、客户许可证、管理费用、开发所需费用方面均比市场上其他RDBMS要低,是一个性能价格很高的RDBMS产品.

1.1.3 ASP.NET技术
ASP.NET的前生是ASP,该语言曾以简单的语法及灵活地嵌入HTML的编辑方法,在很短的时间内成为当时Web技术的领头羊。ASP既不是一种程序语言,也不是一种开发工具,而是一种技术框架,不须使用微软的产品就能编写它的代码,能产生和执行动态、交互式、高效率的站占服务器的应用程序。运用ASP可将VBscript、javascript等脚本语言嵌入到HTML中,便可快速完成网站的应用程序,无需编译,可在服务器端直接执行。容易编写,使用普通的文本编辑器编写,如记事本就可以完成。之后,微软又推出ASP.NET。这不是ASP的简单升级,而是全新一代的动态网页实现系统,用于一台WEB服务器建立强大的应用程序。是微软发展的新体系结构.NET的一部分,是ASP和.NET技术的结合。提供基于组件、事件驱动的可编程网络表单,大大简化了编程。

ASP更新到ASP.NET了,也说明ASP.NET比ASP更优秀了。
ASP的不足:
1)它是被解释执行的,并不是被编译执行的,所以比较慢;
2)它没有提供一个很好的开发环境;
3)不支持类,很难封装复杂的外理逻辑;
4)可随意加入脚本,很灵活,但也导致了不可维护性。
ASP.NET相应的优点:
1)它是被编译后再执行的,所以效率要比ASP高很多;
2)它有很高的开发环境,如VS.NET 2005,更容易调试程式;
3)支持类,支持面向对象,可以使用.NET Framework 更好的进行开发;
4)它使设计和开发分开过来,如界面设计放在.aspx文件中,开发则放在.cs 或 .vb等文件中。这样更有利于程式的维护。

ASP.NET是一种将各种Web元素组合在一起的服务器技术,是一个统一的Web开发平台,它提供了生成一个完整的Web应用程序所必需的各种服务.作为一种新的Web技术,ASP.NET给了设计者一个全新的Web设计概念.它将软件设计和Web设计融为一个整体,同时与Visual Basic.Net(以下简称VB.NET)、Visual c++.net和Visual c#等程序设计语言紧密结合,从而为Web开发人员提供了一个更为强大的编程空间.

与Web技术相比,ASP.NET的优越性主要体现在以下几个方面.
性能大幅提高
ASP.NET是在服务器上运行的,且运行的是经过编译的CLR代码,其程序执行的效率将有大幅提高.同时,它还可以充分利用数据绑定、及时编译、本地优化及缓冲服务等功能来提高程序的性能.
强大的开发环境
ASP.NET的主要开发环境,如Visual studio.Net和ASP.NET WEB Matrix等,均提供了所见即所得的编辑方式.同时,还包括了丰富的工具箱和设计器,并支持控件的拖放及动态的配置管理,从而使得ASP.NET应用程序的开发更便捷和迅速.
强大的功能和适应性
因为ASP.NET是建立在CLR基础上的,所以其整个平台的功能和适用性更加适合网络应用程序的开发.ASP.NET的强大性和适应性,可以使它运行在Web应用软件开发人员的几乎全部的平台上.ASP.NET同时也是语言独立化的,他可以使用很多语言来编写.
简单性和易用性
通过ASP.NET来完成一些很平常的任务,如表单的提交、客户端的身份验证、分布系统和网站配置等,将是一件非常简单的事情.
可移植性和良好的适用性
ASP.NET对多线程有着自己独特的一套操作方法,当一个线程出现异常情况时(如溢出及锁死等).一个新的进程便会在异常处重新建立,并且继续担负原进程所处理的任务,这就使得应用程序能够不中断地处理客户的请求.

2 需求分析
从用户的角度进行设计,将用户分为三类:学生、教师、管理员。特别是教师登录后,不同的科目的教师的登录身份是和自己所教授的科目相对应的,具体的说就是教师进入系统后只能录入自己科目下学生的成绩。

管理员可以添加学生和老师用户和编辑用户信息;可以对学生进行升级处理;可以查询某个学生和某班的成绩情况;可以录入任意科目的成绩;可以添加、删除科目。

教师可以查看个人信息,编辑个人信息;可以查询某个学生成绩和自己教授科目的某班学生成绩并且成绩的显示是按从高到低的顺序显示;可以统计某班某科目的平均成绩;可以录入自己教授科目的成绩。

学生可以查看个人信息和编辑个人信息;可以查询自己的所有成绩。

2.1 功能需求
本系统通过三种用户类型使用学生成绩管理系统,不同类型用户所使用功能不同,管理员能够使用功能的权限最多。教师在成绩查询中能够使用功能最多。学生的功能最基本。系统功能主要包括以下几个部分:用户管理、成绩查询、成绩录入和科目管理。以下按照不同的用户类型对具体功能进行描述。

2.1.1 学生
学生在系统的基本功能是对自己所有成绩的查询和个人信息的查看和修改。

2.1.2 教师
教师在用户管理中能看到自己信息,编辑修改密码和个人信息;在成绩查询中能够按学号、或按姓名进行查询,可以查询某班学生的成绩并且成绩以排序成绩显示出来,可以统计某班学生某科成绩的平均分;在成绩管理中能够录入自己教授科目的成绩及编辑修改已录入成绩。

2.1.3 管理员
管理员在学生成绩管理系统中在用户管理中能够添加学生和教师,并能为学生、教师重设密码,能够编辑教师和学生信息,能够对学生进行升级;在成绩查询中能够对学生成绩管理系统具体的按学号、或按姓名进行查询;在成绩管理中能够按学号录入成绩、编辑修改成绩;在科目管理中能够添加科目,删除科目。

2.2 性能需求
整个系统应当操作简便,界面友好,维护简便。数据库要求运行稳定,执行速度快,数据安全性高。系统本身运行对计算机硬件平台和操作系统平台要求适中。

3 系统设计
3. 1 设计方案
该学生成绩管理系统是用ASP.NET+SQL Server2000数据库作为后台,系统是基于Web的学生成绩管理系统,在系统中分为三种用户类型:学生、教师、管理员。主要有用户登录模块、用户管理模块、成绩查询模块、成绩管理模块和科目管理模块构成。

用户登录模块功能:管理员和教师师通过工号和密码登录,学生通过学号和密码登录
用户管理模块功能:能够添加教师师和学生用户类型,能够编辑修改密码、个人信息,能够查看用户信息。管理员可以对学生用户进行年级升级处理。

成绩查询模块功能:能够按学号、姓名查询某个学生成绩,教师师能够查询某班学生自己教授科目的所有成绩,能够统计某班某科学生的平均成绩。

成绩管理模块功能:能够录入成绩和编辑成绩。
科目管理模块功能:能够添加科目,删除已添加的科目。
总体功能图如图3-1:
C#毕业设计——基于C#+asp.net+sqlserver的学生成绩管理系统设计与实现(毕业论文+程序源码)——成绩管理系统_第1张图片
图3-1 总体功能图

学生子功能图如图3-2:
C#毕业设计——基于C#+asp.net+sqlserver的学生成绩管理系统设计与实现(毕业论文+程序源码)——成绩管理系统_第2张图片

图3-2 学生子功能图
教师子功能图如图3-3:
C#毕业设计——基于C#+asp.net+sqlserver的学生成绩管理系统设计与实现(毕业论文+程序源码)——成绩管理系统_第3张图片

图3-3 教师子功能图

管理员子功能图如图3-4:
C#毕业设计——基于C#+asp.net+sqlserver的学生成绩管理系统设计与实现(毕业论文+程序源码)——成绩管理系统_第4张图片

图3-4 管理员子功能图

3.2数据库设计
根据需求分析,本系统后台数据库共分为4个表,以下分别给出各个数据库表的简单描述.
1.Users表。该表是储存学生信息的表。
表3-1 :Users表
C#毕业设计——基于C#+asp.net+sqlserver的学生成绩管理系统设计与实现(毕业论文+程序源码)——成绩管理系统_第5张图片

2.Subject表。该表储存科目信息。
表3-2:Subject表
在这里插入图片描述

3.Achievement表。该表储存成绩信息。
表3-3:Achievement表
C#毕业设计——基于C#+asp.net+sqlserver的学生成绩管理系统设计与实现(毕业论文+程序源码)——成绩管理系统_第6张图片

4.Admin表。该表储存的是管理员和教师信息。
表3-4:Admin表
C#毕业设计——基于C#+asp.net+sqlserver的学生成绩管理系统设计与实现(毕业论文+程序源码)——成绩管理系统_第7张图片

4 系统实现
4.1用户登录模块
用户分为三种类型:学生、教师、管理员。教师和管理员登录时有身份验证,当用户是学生时,直接输入用户名和密码,如果是教师和管理员登录时,除了输入用户名和密码,还要在下面的选项框中打钩,因为教师信息和管理员信息在同一张数据库表里。登录界面如图4-1:
C#毕业设计——基于C#+asp.net+sqlserver的学生成绩管理系统设计与实现(毕业论文+程序源码)——成绩管理系统_第8张图片

图4-1 用户登录界面
当用户都进入系统后,都能看到一样的界面,但是学生只能进入用户管理和成绩查询的界面,教师可以进入用户管理、成绩查询和成绩管理的界面。管理员则可以全部进入。
C#毕业设计——基于C#+asp.net+sqlserver的学生成绩管理系统设计与实现(毕业论文+程序源码)——成绩管理系统_第9张图片

图4-2 管理页面
4.2用户管理模块
4.2.1用户添加功能的实现
用户管理模块中的添加功能是管理员特有的功能,添加学生用户时,同时添加用户名(也就是学号)和初始密码,添加教师师时,同时确定教师教授的科目名,添加用户名(也就是工号)和初始密码.
C#毕业设计——基于C#+asp.net+sqlserver的学生成绩管理系统设计与实现(毕业论文+程序源码)——成绩管理系统_第10张图片

图4-3 添加用户图
4.2.2 年级升级功能的实现
由于学校学生每年年级升级的原因,所以系统针对这个问题设计了一个年级升级的功能,由此可以进行批量处理,更加方便。一、二年级的变成二、三年级,三年级的学生则显示为“已毕业”。
C#毕业设计——基于C#+asp.net+sqlserver的学生成绩管理系统设计与实现(毕业论文+程序源码)——成绩管理系统_第11张图片

图4-4 学生年级升级前的图
在点击了“学员升级”按钮后,如图4-5学生年级升级后的图:
C#毕业设计——基于C#+asp.net+sqlserver的学生成绩管理系统设计与实现(毕业论文+程序源码)——成绩管理系统_第12张图片

图4-5 学生年级升级后的图
主要代码如下:

  Protected Sub upgrade_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles upgrade.Click
        SqlDataSource2.UpdateCommand = "update users set grade='己毕业' where grade='三年级'"
        SqlDataSource2.Update()
        SqlDataSource2.UpdateCommand = "update users set grade='三年级' where grade='二年级'"
        SqlDataSource2.Update()
        SqlDataSource2.UpdateCommand = "update users set grade='二年级' where grade='一年级'"
        SqlDataSource2.Update()
        Session("userType") = "管理员"
        Response.Redirect("managerUsers.aspx")
End Sub

4.2.3 查询信息功能的实现
个人信息查询功能是所有用户都可以使用的功能,并且可以编辑修改自己的信息。学生和教师进入用户管理后就可以看到自己的信息,管理员进入用户管理模块后除了可以看见自己信息还可以通过用户类型的选择看见所有学生和教师的信息。

4.3成绩查询模块
4.3.1 学号查询功能的实现
学号查询由老师进行,主要代码如下:

Protected Sub查询学号 _Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        SqlDataSource.SelectCommand = "select * from achieve where 学号 ='" + TextBox1.Text + "'"
        SqlDataSource.DataBind()
End Sub

4.3.2 姓名查询功能的实现
和学号查询功能相似,主要代码如下

Protected Sub 查询姓名_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click
        SqlDataSource.SelectCommand = "select * from achieve where 姓名 ='" + TextBox2.Text + "'"
        SqlDataSource.DataBind()
    End Sub

4.3.3 查询班级功能的实现
在进行班级查询时,先用一个dropdownlist下拉框选择年级,再输入要查询的班级,如“二班”。老师查询时,显示的是教师教授科目下的班级全体学生的成绩,同时显示的结果是按成绩由高到低的顺序显示出来。管理员查询时,则显示所有科目的成绩。图4-6是语文老师查询某班的成绩所显示的结果:
C#毕业设计——基于C#+asp.net+sqlserver的学生成绩管理系统设计与实现(毕业论文+程序源码)——成绩管理系统_第13张图片

图4-6 查询班级图

4.3.4查询班级某科平均分功能的实现
班级平均分查询首先通过一个dropdownlist下拉框选好年级,输入要查询的班级,再有另一个dropdownlist下拉框选择要查询平均分的科目名称。但是如果用户是数学老师,他查询其他科目平均成绩时则只显示平均分,不显示具体的学生成绩情况列表。管理员没有查询平均分这个功能。
C#毕业设计——基于C#+asp.net+sqlserver的学生成绩管理系统设计与实现(毕业论文+程序源码)——成绩管理系统_第14张图片

图4-7 平均分查询图
主要代码如下:

Protected Sub 查询平均分_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles B1.Click
        conn = New SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings(0).ConnectionString)
        conn.Open()
        Dim comm As SqlCommand = New SqlCommand("select avg(成绩)as avgs from achieve where 年级='" + D2.SelectedValue + "' and 班级='" + T2.Text + "' and 科目='" + d3.SelectedValue + "'", conn)
        Dim dr As SqlDataReader = comm.ExecuteReader()
        If dr.Read() Then
            If Not IsDBNull(dr.Item("avgs")) Then
                T3.Text = dr("avgs").ToString()
            End If

4.4成绩管理模块
4.4.1录入成绩功能的实现
录入成绩功能是只有教师可以实现,在输入学号后,光标移到成绩的文本框中时,在输入学号后会显示这个学生的姓名、年级、班级,以便可以核对学生信息防止输入错误的发生。
教师只能录入自己教授科目的成绩,在录入成绩的同时,自动录入时间。有了录入时间就可以区别学生在不同学年同一科目的学习成绩。
C#毕业设计——基于C#+asp.net+sqlserver的学生成绩管理系统设计与实现(毕业论文+程序源码)——成绩管理系统_第15张图片

图4-8 录入成绩图
主要代码如下:

Protected Sub TextBox1_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
        conn = New SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings(0).ConnectionString)
        conn.Open()
        Dim comm As SqlCommand = New SqlCommand("select name, grade, class from [users] where userNumber ='" + 学号.Text + "'", conn)
        Dim dr As SqlDataReader = comm.ExecuteReader()
        If dr.Read() Then
            If Not IsDBNull(dr.Item("name")) Then
                Label1.Text = dr("name").ToString()
            Else
                Label1.Text = ""
            End If
            If Not IsDBNull(dr.Item("grade")) Then
                Label2.Text = dr("grade").ToString()
            Else
                Label2.Text = ""
            End If
            If Not IsDBNull(dr.Item("class")) Then
                Label3.Text = dr("class").ToString()
            Else
                Label3.Text = ""
            End If
        End If
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        SqlDataSource.Insert()
        学号.Text = ""
        分数.Text = ""
        Label1.Text = ""
        Label2.Text = ""
        Label3.Text = ""
        band()

4.4.2编辑成绩功能的实现
可以编辑录入成绩的分数和时间,
主要代码如下:

Protected Sub GridView1_RowUpdating(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewUpdateEventArgs) Handles GridView1.RowUpdating
        If Session("userType") = Nothing Then
            Response.Redirect("accessDenied.htm")
        ElseIf Session("userType") = "学生" Then
            Response.Redirect("accessDenied.htm")
        End If
        band()
    End Sub

         Protected Sub GridView1_RowEditing(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewEditEventArgs) Handles GridView1.RowEditing
        If Session("userType") = Nothing Then
            Response.Redirect("accessDenied.htm")
        ElseIf Session("userType") = "学生" Then
            Response.Redirect("accessDenied.htm")
        End If
        band()
    End Sub

        Protected Sub GridView1_RowDeleting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles GridView1.RowDeleting
        If Session("userType") = Nothing Then
            Response.Redirect("accessDenied.htm")
        ElseIf Session("userType") = "学生" Then
            Response.Redirect("accessDenied.htm")
        End If
        band()
    End Sub   

4.5科目管理模块
4.5.1科目录入功能的实现
科目管理这一功能模块是管理员特有的功能权限,老师和学生都不能使用此功能。
C#毕业设计——基于C#+asp.net+sqlserver的学生成绩管理系统设计与实现(毕业论文+程序源码)——成绩管理系统_第16张图片

图4-9 添加科目图
主要代码如下:首先是用户身份的判断;

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        conn = New SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings(0).ConnectionString)
        conn.Open()
        If Session("userType") <> "管理员" Then
            Response.Write("")
            Response.Write("")
        End If

        If Session("userType") = Nothing Then
            Response.Redirect("accessDenied.htm")
        ElseIf Session("userType") = "学生" Then
            Response.Redirect("accessDenied.htm")
        Else
            添加科目.Enabled = True
        End If

接下来是添加录入科目功能的实现:

        Protected Sub 添加科目_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        SqlDataSource.Insert()
        科目名称.Text = ""
    End Sub

4.5.2科目删除功能的实现
主要代码如下:

Protected Sub GridView1_RowDeleting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles GridView1.RowDeleting
        If Session("userType") = Nothing Then
            Response.Redirect("accessDenied.htm")
        ElseIf Session("userType") = "学生" Then
            Response.Redirect("accessDenied.htm")
        Else
           添加科目.Enabled = True
        End If

5 系统测试
5. 1测试环境:
本系统测试环境;CPU ,内存SDRAM 512M, SQL SERVER ,VISUAL STUDIO ,WINDOWS XP下测试通过.建议用户CPU PIII,内存256M及以上,数据库版本SQL SERVER ,WIN,WIN SERVER 及以上软硬件平台使用.

5.2 测试结果:
系统在上述软硬件环境下分别对学生,教师,系统管理员的详细设计功能做出测试,结果能够达到预期功能。并且系统运行稳定。

结 论
经过这段时间进行地毕业设计和毕业论文的工作,现在系统能够实现根据用户需求的设计计划内的所有功能。
本系统是分为三种用户进行操作,因此不同身份进入系统后,相应的能够在自己权限内使用的功能不同,这样使用户操作相互独立,互不干扰。
由于本系统采用的是B/S的结构模式,较之于其它版本开发的程序,比如C/S的结构模式,提高了用户在操作上的简单性。
本系统的操作界面设计简单明确,使用操作时很方便,许多功能在同一个页面上。另外,通过反复测试,本系统运行稳定,安全。
省略

参考文献
[1] 丁兆海,杜军.Visual Basic.NET案例教程[M].北京:电子工业出版社,2005。
[2] 吉根林,崔海源.ASP.NET程序设计教程[M].北京:电子工业出版社,2004。
[3] 胡勇辉,兰湘涛.ASP.NET开发实战详解:入门、模块、系统[M].北京:电子工业出版社,2006。
[4] 袁阳.Visual Basic.Net实例入门[M].北京:中国青年出版社,2002。
[5] 孙印杰,杨滔,吕书琴.ASP.NET+SQL Server动态网站设计实例精解[M].北京:电子工业出版社,2005。
[6] 黎卫东.ASP.NET网络开发入门与实践[M].北京:人民邮电出版社,2006。
[7] 徐新华.精通ASP.NET 2.0[M].北京:机械工业出版社,2006。

致 谢
省略


5、资源下载

本项目源码及完整论文如下,有需要的朋友可以点击进行下载。如果链接失效可点击下方卡片扫码自助下载。

序号 毕业设计全套资源(点击下载)
本项目源码 基于C#+asp.net+sqlserver的学生成绩管理系统设计与实现(源码+文档)_C#_BS架构_学生成绩管理系统.zip

你可能感兴趣的:(精选毕业设计完整源码+论文,asp.net,c#,sqlserver)