C#与SQL数据库学生成绩管理系统完整代码

更新时间:2023-04-26 06:09:01 阅读量: 高等教育 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

数据库技术及应用项目设

计报告

学生成绩管理系统

姓名:Celia Yan

2015-01-07

一.设计目的及意义

在如今的高校日常管理中,学生成绩管理系统是其中非常重要的一环,特别是当前学校规模不断扩大,学生人数日益增加,课程门类多,校区分散等实际情况,学生成绩统计功能越来越繁重,稍有疏忽就会出现差错。因此,学生成绩管理系统更具有非常大的实际应用意义。在互联网快速崛起的今天,改革传统的手工录入方式,公正,准确,及时反映学生的信息和成绩的情况,以适应信息时代的要求,是学生成绩管理系统的一个新的理念。通过成绩管理可以大大提高学校的工作效率。学生成绩管理系统应该完成以下两个方面的内容:学生档案资料的管理、学生成绩的管理。通过学生成绩管理系统可以做到信息的规范管理,科学统计和快速查询、修改、增加、删除等,减少管理方面的工作量。

二.主要功能

该系统主要用于学校学生信息管理,总体任务是实现学生信息关系的系统化、规范化和自动化,其主要任务是用计算机对学生信息进行日常管理,如查询、修改、增加、删除,另外还考虑到用户登录的权限,针对学生信息和权限登录的学生成绩管理系统。

本系统主要包括注册管理、教师管理、学生信息查询、添加、修改、删除等部分。其主要功能有:

(1)学生信息的添加,包括输入学生基本信息和成绩。

(2)学生信息的查询,包括查询学生的基本信息和成绩。

(3)学生信息的修改,包括修改学生基本信息和成绩。

(4)学生信息的删除,包括删除学生基本信息和成绩。

(5)登录用户密码修改,用户登录到系统可进行相应的用户密码修改。

(6)管理员用户对用户名的管理,包括添加新用户、删除用户。

学生成绩管理系统是典型的信息管理系统,其开发主要包括后台数据库的建立和维护

1

以及前端应用程序开发两个方面。对于前者要求建立起数据一致性和完整性强、数据安全性好的数据库。对于后者则要求应用程序功能完备,易使用。

该管理系统我使用的是Microsoft Visual Studio 2012 及 Microsoft SQL Server 2008。

系统功能流程图

图系统功能流程

三.数据库设计

2

本系统的数据库采用的是SQL Server2008 。该数据库包括学生成绩表、用户登录表用于纪录学生的基本信息数据库表结构如下:

成绩表物理结构

用户登录表物理结构:

3

触发器

删除DLB中的记录时同时删除CJB中姓名相同的记录

USE[studentscore]

GO

/****** Object: Trigger [dbo].[dlb_delete] Script Date: 01/07/2015 12:42:17 ******/

SET ANSI_NULLS ON

GO

4

SET QUOTED_IDENTIFIER ON

GO

ALTER trigger[dbo].[dlb_delete]

on[dbo].[dlb]after delete

as

begin

declare@leib varchar(50)

select@leib='学生'from deleted

delete from cjb

where姓名in(select用户名from deleted)

End

数据库连接

string constr = "Password=617804;Persist Security Info=True;User ID=ywj;Initial Catalog=studentscore;Data Source=YANJING";

SqlConnection conn = new SqlConnection(constr);

string sqlstr = "select * from cjb";

SqlCommand cmd = new SqlCommand(sqlstr, conn);

SqlDataReader reader = ();

DataSet ds = new DataSet();

while ())

{

string id = reader["学号"].ToString();

string name = reader["姓名"].ToString();

("id={0},name={1},学号,姓名"));

5

}

四.系统实现

.登录界面

该界面是学生成绩管理系统的登录界面,可以选择作为学生,管理员或者教师身份登录。每一个进入系统的人都会看到当前的时间,在登录时只有用户名,密码,与身份相符合时才能进入系统,否则登录无法成功。

using System;

using ;

using ;

using ;

using ;

using ;

6

using WindowsFormsApplication1

{

public partial class Form1 : Form

{

static public string sn, sub;

public Form1()

{

InitializeComponent();

}

Form2fr2 = new Form2(); Form3fr3 = new Form3(); Form4fr4 = new Form4();

private void Form1_Load(object sender, EventArgs e)

{

();

}

private void label1_Click(object sender, EventArgs e) {

}

private void button1_Click(object sender, EventArgs e) {

string constr = "Password=617804;Persist Security Info=True;User ID=ywj;Initial Catalog=studentscore;Data Source=YANJING";

SqlConnection conn = new SqlConnection(constr);

7

();

if == "" || == "")

("信息不全,请不要遗漏信息!");

if

{

string cstr = "select * from dlb where 类别='管理员' and 用户名='" + + "'and 密码='" + + "'";

SqlCommand comm = new SqlCommand(cstr, conn);

SqlDataReader dr = ();

if ())

{

sn = (); = false;

;

}

else

{

("密码或用户名出错,请重新输入!");

= ""; = "";

}

}

if

{

string cstr = "select * from dlb where 类别='教师' and 用户名='" + + "'and 密码='" + + "'";

SqlCommand comm = new SqlCommand(cstr, conn);

SqlDataReader dr = ();

8

if ())

{

sn = sub = (3).ToString(); (); = false;

}

else

{

("密码或用户名出错,请重新输入!");

= ""; = "";

}

}

if

{

string cstr = "select * from dlb where 类别='学生' and 用户名='" + + "'and 密码='" + + "'";

SqlCommand comm = new SqlCommand(cstr, conn);

SqlDataReader dr = ();

if ())

{

sn = (); = false;

}

else

{

("密码或用户名出错,请重新输入!");

9

= ""; = "";

}

}

(); ();

}

private void button2_Click(object sender, EventArgs e) {

();

}

private void timer1_Tick(object sender, EventArgs e) {

= "当前时间:" + + "" + }

}

}

学生成绩管理

10

设计过程:

此部分主要针对学生信息的管理,可以查询学生的所有成绩信息,实现成绩的添加、删除、修改、计算平均分等功能。还可以修改当前用户下的密码。

private void Form2_Load(object sender, EventArgs e)

{

= + "同学,欢迎你进入成绩管理系统!";

();

= false;

= false;

}

11

private void button1_Click(object sender, EventArgs e) {

}

private void button3_Click(object sender, EventArgs e) {

ext , conn);

efaultView;

(); ();

}

private void toolStripButton2_Click(object sender, EventArgs e) {

}

private void toolStripButton4_Click(object sender, EventArgs e) {

= true;

}

private void button1_Click_1(object sender, EventArgs e) {

string constr = "Password=617804;Persist Security Info=True;User ID=ywj;Initial Catalog=studentscore;Data Source=YANJING";

SqlConnection conn = new SqlConnection(constr);

();

12

if != { ("密码输入有误,请重新输入"); }

if == "" && == "") { ("密码不允许为空!"); }

if == && !="")

{

SqlCommand com = new SqlCommand("update dlb set 密码='" + + "'where 用户名='" + + "'", conn);

if () == 1)

{

("密码更改成功"); = false;

}

}

(); ();

}

private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e)

{

}

private void toolStripButton5_Click(object sender, EventArgs e)

{

(); Form1 l = new Form1(); = true;

}

private void toolStripButton6_Click(object sender, EventArgs e)

{

13

ext , conn);

ows[0][i].ToString()) <60)

ows[0][i].ToString());

isible=true;

string constr = "Password=617804;Persist Security Info=True;User ID=ywj;Initial Catalog=studentscore;Data Source=YANJING";

SqlConnection conn = new SqlConnection(constr);

();

SqlDataAdapter da = new SqlDataAdapter("Select * from cjb where 姓名='"+Form1 .sn .Trim ()+"'" , conn);

DataSet ds = new DataSet();

(ds, "usertable");

int max=0,min=1001;

double ave = ;

for(int i=2;i <=6;i++)

{

if["usertable"].Rows[0][i].ToString())>max)

max=["usertable"].Rows[0][i].ToString());

if ["usertable"].Rows[0][i].ToString())

min=["usertable"].Rows[0][i].ToString());

}

=();

=();

=["usertable"].Rows[0]["总分"].ToString();

ave=["usertable"].Rows[0]["总分"].ToString())/(double)5;

=();

14

();(); }

private void timer1_Tick(object sender, EventArgs e)

{

="当前时间:"+ }

教师管理界面

设计过程:

此部分主要针对教师信息管理,可以查询学生的所有成绩信息,实现成绩的添加、删除、

15

修改、成绩升序排序等功能。还可以修改当前用户下的密码。

private void button1_Click(object sender, EventArgs e) ub + "from cjb where 学号='"+ +"'",conn );

if ()==null){("用户名不存在");}

else

{

SqlDataAdapter da =new SqlDataAdapter("select 学号,"++" from cjb where 学号='"++"'",conn);

DataSet ds =new DataSet();

(ds ,"chaxun");

=["chaxun"].DefaultView;

}

}

if =="姓名")

{

SqlCommand cm=new SqlCommand("select 姓名," + + "from cjb where 姓名='" + +"'",conn );

if ()==null){("该用户不存在");}

else

{

SqlDataAdapter da = new SqlDataAdapter("select 姓名,"+ + " from cjb where 姓名='" + + "'",conn );

DataSet ds = new DataSet();

(ds,"table");

=["table"].DefaultView;

}

16

}

();();

}

private void textBox1_TextChanged(object sender, EventArgs e) {

}

private void toolStripButton2_Click(object sender, EventArgs e) isible =false ; = true; = false;

}

private void toolStripButton1_Click(object sender, EventArgs e) ataSource = ["table"].DefaultView;

();conn .Dispose();

}

private void button2_Click(object sender, EventArgs e) isible

=false ; = true; = false; = false;

}

private void textBox3_TextChanged(object sender, EventArgs e) {

}

private void groupBox2_Enter(object sender, EventArgs e) {

17

}

private void button3_Click(object sender, EventArgs e) efaultView;

(); ();

}

private void toolStripButton6_Click(object sender, EventArgs e) {

(); Form1 l = new Form1(); = true;

}

private void timer1_Tick(object sender, EventArgs e)

{

= "当前时间:" + + }

管理员管理界面

设计过程:

18

此部分主要针对管理员的,可以添加和删除所有用户的账号和密码。

private void Form4_Load(object sender, EventArgs e)

{

();

= + "管理员,欢迎进入成绩管理系统!";

= false;

}

private void label1_Click(object sender, EventArgs e)

{

}

private void radioButton1_CheckedChanged(object sender, EventArgs e) {

if { = true; = true; }

}

private void radioButton2_CheckedChanged(object sender, EventArgs e) {

if { = true; = false; }

}

private void txtyhm_TextChanged(object sender, EventArgs e)

{

}

19

private void button2_Click(object sender, EventArgs e) {

= = = "";

}

private void button3_Click(object sender, EventArgs e) {

(); Form1 l = new Form1(); = true;

}

private void label5_Click(object sender, EventArgs e) {

}

private void timer1_Tick(object sender, EventArgs e)

{

= "当前时间:" + + }

private void button1_Click(object sender, EventArgs e) {

string constr = "Password=617804;Persist Security Info=True;User ID=ywj;Initial Catalog=studentscore;Data Source=YANJING";

20

本文来源:https://www.bwwdw.com/article/nvaq.html

Top