《NET技术》课程设计报告.docx

上传人:b****6 文档编号:8216478 上传时间:2023-01-29 格式:DOCX 页数:17 大小:423.78KB
下载 相关 举报
《NET技术》课程设计报告.docx_第1页
第1页 / 共17页
《NET技术》课程设计报告.docx_第2页
第2页 / 共17页
《NET技术》课程设计报告.docx_第3页
第3页 / 共17页
《NET技术》课程设计报告.docx_第4页
第4页 / 共17页
《NET技术》课程设计报告.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

《NET技术》课程设计报告.docx

《《NET技术》课程设计报告.docx》由会员分享,可在线阅读,更多相关《《NET技术》课程设计报告.docx(17页珍藏版)》请在冰豆网上搜索。

《NET技术》课程设计报告.docx

《NET技术》课程设计报告

课程设计报告

  

系(部、中心)

姓名学号

专业班级

同组人员

课程名称.NET技术

设计题目名称学生成绩管理系统——系统管理子系统设计与实现

起止时间

成绩 

指导教师签名 

 

北方民族大学教务处制

目录

1.系统总体分析与设计2

1.1系统体系结构2

1.2系统功能结构4

2.系统数据库设计与实现4

3.系统功能详细设计与实现6

3.1基本信息维护子系统6

4.结束语22

5.参考文献22

 

1.系统总体分析与设计

1.1系统体系结构

本系统采用客户/服务器(Client/Server)模式。

图1-1系统体系结构图

(1)应用服务器运行数据负荷较轻。

最简单的C/S体系结构的数据库应用由两部分组成,即客户应用程序和数据库服务器程序。

二者可分别称为前台程序与后台程序。

运行数据库服务器程序的机器,也称为应用服务器。

一旦服务器程序被启动,就随时等待响应客户程序发来的请求;客户应用程序运行在用户自己的电脑上,对应于数据库服务器,可称为客户电脑,当需要对数据库中的数据进行任何操作时,客户程序就自动地寻找服务器程序,并向其发出请求,服务器程序根据预定的规则作出应答,送回结果,应用服务器运行数据负荷较轻。

  

(2)数据的储存管理功能较为透明。

在数据库应用中,数据的储存管理功能,是由服务器程序和客户应用程序分别独立进行的,前台应用可以违反的规则,并且通常把那些不同的(不管是已知还是未知的)运行数据,在服务器程序中不集中实现,例如访问者的权限,编号可以重复、必须有客户才能建立定单这样的规则。

所有这些,对于工作在前台程序上的最终用户,是“透明”的,他们无须过问(通常也无法干涉)背后的过程,就可以完成自己的一切工作。

在客户服务器架构的应用中,前台程序不是非常“瘦小”,麻烦的事情都交给了服务器和网络。

在C/S体系的下,数据库不能真正成为公共、专业化的仓库,它受到独立的专门管理。

(3)C/S架构的劣势是高昂的维护成本且投资大。

首先,采用C/S架构,要选择适当的数据库平台来实现数据库数据的真正“统一”,使分布于两地的数据同步完全交由数据库系统去管理,但逻辑上两地的操作者要直接访问同一个数据库才能有效实现,有这样一些问题,如果需要建立“实时”的数据同步,就必须在两地间建立实时的通讯连接,保持两地的数据库服务器在线运行,网络管理工作人员既要对服务器维护管理,又要对客户端维护和管理,这需要高昂的投资和复杂的技术支持,维护成本很高,维护任务量大。

1.2系统功能结构

本系统主要的业务模块有系统管理模块、基本信息维护模块、查询管理模块和成绩管理模块,其中系统管理模块主要是实现用户登陆、修改密码、找回密码功能,基本信息维护模块主要实现对教师和学生信息的添加、删除和修改,查询管理模块主要实现查询成绩、对教师和学生信息的查询,成绩管理模块主要实现对学生成绩的录入与修改。

本系统涉及的用户有管理员、教师和学生。

功能模块图如下:

图1-2系统功能模块图

2.系统数据库设计与实现

(1)User——用户表

字段名称

说明

数据类型

长度

主/外键

约束

备注

UserName

用户名

变长字符型

10

主键

Password

密码

变长字符型

10

非空

Permission

权限

变长字符型

10

非空

(2)Teach——授课表

字段名称

说明

数据类型

长度

主/外键

约束

备注

TeacherID

教职工号

变长字符型

10

主键

CourseID

课程代码

变长字符型

6

非空

(3)Teacher——教师表

字段名称

说明

数据类型

长度

主/外键

约束

备注

TeacherID

教职工号

变长字符型

10

主键

Tname

姓名

变长字符型

20

非空

Tsex

性别

字符型

2

非空

E-mail

邮箱

变长字符型

20

College

院部

变长字符型

20

非空

(4)Course——课程表

字段名称

说明

数据类型

长度

主/外键

约束

备注

CourseID

课程代码

变长字符型

6

主键

Cname

课程名称

变长字符型

10

非空

Cnature

课程性质

变长字符型

10

非空

Credit

学分

单精度型

8

(5)Student——学生表

字段名称

说明

数据类型

长度

主/外键

约束

备注

StudentID

学号

变长字符型

10

主键

Sname

姓名

变长字符型

20

非空

Ssex

性别

字符型

2

非空

College

院部

变长字符型

20

非空

Major

专业

变长字符型

20

非空

Class

行政班

变长字符型

10

非空

(6)Study——选修表

字段名称

说明

数据类型

长度

主/外键

约束

备注

StudentID

学号

变长字符型

10

主键、外键

参照“学生表”

中的“StudentID”

CourseID

课程代码

整型

10

主键、外键

参照“课程表”中的“CourseID”

Year

学年

变长字符型

10

Term

学期

整型

4

Score

成绩

单精度型

8

图2-1数据库实现关系图

3.系统功能详细设计与实现

3.1系统管理子系统

系统子系统主要是完成:

用户的登录,找回密码,修改密码

‘定义公共类EditData

ImportsSystem.Data.OleDb

PublicClassEditData

SharedConnStrAsString="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=SSMS.mdb;PersistSecurityInfo=True"

'共享方法Insert

SharedFunctionInsert(ByValstrSQLAsString)AsInteger

DimconnAsOleDbConnection=NewOleDbConnection(ConnStr)

DimmyCommandAsOleDbCommand=NewOleDbCommand(strSQL,conn)

DimcountAsInteger=0

Try

conn.Open()

count=myCommand.ExecuteNonQuery()

CatchexAsOleDbException

MsgBox(ex.ToString)

CatchexAsException

MsgBox(ex.ToString)

Finally

conn.Close()

EndTry

Returncount

EndFunction

'共享方法Delete

SharedFunctionDelete(ByValstrSQLAsString)AsInteger

DimconnAsOleDbConnection=NewOleDbConnection(ConnStr)

DimmyCommandAsOleDbCommand=NewOleDbCommand(strSQL,conn)

DimcountAsInteger=0

Try

conn.Open()

count=myCommand.ExecuteNonQuery()

CatchexAsOleDbException

MsgBox(ex.ToString())

CatchexAsException

MsgBox(ex.ToString)

Finally

conn.Close()

EndTry

Returncount

EndFunction

'共享方法Updata

SharedFunctionUpdate(ByValstrSQLAsString)AsInteger

DimconnAsOleDbConnection=NewOleDbConnection(ConnStr)

DimmyCommandAsOleDbCommand=NewOleDbCommand(strSQL,conn)

DimcountAsInteger=0

Try

conn.Open()

count=myCommand.ExecuteNonQuery()

CatchexAsOleDbException

MsgBox(ex.ToString)

CatchexAsException

MsgBox(ex.ToString)

Finally

conn.Close()

EndTry

Returncount

EndFunction

'共享方法Search

SharedFunctionSearch(ByValstrSQLAsString)AsDataTable

DimconnAsOleDbConnection=NewOleDbConnection(ConnStr)

DimmyCommandAsOleDbCommand=NewOleDbCommand(strSQL,conn)

conn.Open()

DimadapterAsNewOleDbDataAdapter

adapter.TableMappings.Add("Table","TEMP")

adapter.SelectCommand=myCommand

DimdsAsNewDataSet()

adapter.Fill(ds)

conn.Close()

Returnds.Tables("TEMP")

EndFunction

EndClass

 

‘我的类DBuser

PublicClassDBuser

PublicUserNameAsString'用户名

PublicPasswordAsString'密码

PublicPermissionAsString'权限

PublicSnameAsString'学生姓名

PublicStudentIDAsString'学号

PublicTeacherIDAsString'教职工号

PublicTnameAsString'教师姓名

SubNew()

EndSub

SubNew(ByValNameAsString,ByValPWDAsString)

UserName=Name

Password=PWD

EndSub

PublicFunctionLogin()AsBoolean

DimSQLStringAsString="select*from[User]whereUserName='"&UserName&"'"&"and[Password]='"&Password&"'"

DimUserTableAsDataTable=EditData.Search(SQLString)

IfUserTable.Rows.Count=0Then

MsgBox("用户名或密码错误!

")

ReturnFalse

Else

Permission=UserTable.Rows(0)("Permission")

ReturnTrue

EndIf

EndFunction

PublicSubGetSPassword(ByValStudentIDAsString,ByValSnameAsString)

DimSQLStringAsString="select*fromStudentwhereStudentID='"&StudentID&"'"&"andSname='"&Sname&"'"

DimUserTableAsDataTable=EditData.Search(SQLString)

IfUserTable.Rows.Count=0Then

MsgBox("学号或姓名错误!

")

Else

SQLString="select[Password]from[User]whereUserName='"&StudentID&"'"

MsgBox("密码:

"&EditData.Search(SQLString).Rows(0)("Password"))

EndIf

EndSub

PublicSubGetTPassword(ByValTeacherIDAsString,ByValTnameAsString)

DimSQLStringAsString="select*fromTeacherwhereTeacherID='"&TeacherID&"'"&"andTname='"&Tname&"'"

DimUserTableAsDataTable=EditData.Search(SQLString)

IfUserTable.Rows.Count=0Then

MsgBox("教职工号或姓名错误!

")

Else

SQLString="select[Password]from[User]whereUserName='"&TeacherID&"'"

MsgBox("密码:

"&EditData.Search(SQLString).Rows(0)("Password"))

EndIf

EndSub

PublicSubModifyPassword(ByValUserNameAsString,ByValNPasswordAsString)

DimSQLStringAsString="update[User]set[Password]='"&NPassword+"'"+"whereUserName='"&UserName+"'"

IfEditData.Update(SQLString)>0Then

MsgBox("密码修改成功,请记住新密码!

")

EndIf

EndSub

EndClass

PublicClassFPWForm

PrivateSubForm2_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.Load

RadioButton1.Checked=True

Label3.Text=""

EndSub

PrivateSubButtonX1_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButtonX1.Click

DimUserAsNewDBuser

IfTextBox1.Text=""Then

ErrorProvider1.SetError(TextBox1,"用户名不能为空!

")

ElseIfTextBox2.Text=""Then

ErrorProvider1.SetError(TextBox2,"密码不能为空!

")

ElseIfRadioButton1.Checked=TrueThen

User.GetSPassword(TextBox1.Text,TextBox2.Text)

Else

User.GetTPassword(TextBox1.Text,TextBox2.Text)

EndIf

EndSub

PrivateSubRadioButton2_CheckedChanged(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesRadioButton2.CheckedChanged

IfRadioButton2.Checked=TrueThen

Label1.Text="教职工号"

Else

Label1.Text="学号"

EndIf

EndSub

EndClass

PublicClassMainForm

PrivateSubButtonItem8_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButtonItem8.Click

RibbonControl1.Office2007ColorTable=DevComponents.DotNetBar.Rendering.eOffice2007ColorScheme.Black

EndSub

PrivateSubButtonItem9_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButtonItem9.Click

RibbonControl1.Office2007ColorTable=DevComponents.DotNetBar.Rendering.eOffice2007ColorScheme.Silver

EndSub

PrivateSubButtonItem10_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButtonItem10.Click

RibbonControl1.Office2007ColorTable=DevComponents.DotNetBar.Rendering.eOffice2007ColorScheme.VistaGlass

EndSub

PrivateSubButtonItem11_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButtonItem11.Click

RibbonControl1.Office2007ColorTable=DevComponents.DotNetBar.Rendering.eOffice2007ColorScheme.Blue

EndSub

PrivateSubForm1_Load(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesMyBase.Load

DimribbonTexts=RibbonControl1.SystemText

ribbonTexts.MaximizeRibbonText="功能区最大化(&M)"

ribbonTexts.MinimizeRibbonText="功能区最小化(&N)"

ribbonTexts.QatAddItemText="添加到快速访问工具栏(&A)"

ribbonTexts.QatCustomizeMenuLabel="自定义快速访问工具栏"

ribbonTexts.QatCustomizeText="自定义快速访问工具栏(&C)..."

ribbonTexts.QatDialogAddButton="添加(&A)>>"

ribbonTexts.QatDialogCancelButton="取消"

ribbonTexts.QatDialogCaption="自定义快速访问工具栏"

ribbonTexts.QatDialogCategoriesLabel="选择命令(&C):

"

ribbonTexts.QatDialogOkButton="确定"

ribbonTexts.QatDialogPlacementCheckbox="在功能区下方显示快速访问工具栏(&P)"

ribbonTexts.QatDialogRemoveButton="删除(&R)"

ribbonTexts.QatPlaceAboveRibbonText="在功能区上方显示快速访问工具栏(&P)"

ribbonTexts.QatPlaceBelowRibbonText="在功能区下方显示快速访问工具栏(&P)"

ribbonTexts.QatRemoveItemText="从快速访问工具栏删除(&R)"

EndSub

PrivateSubButtonX2_Click(ByValsenderAsSystem.Object,ByValeAsSystem.EventArgs)HandlesButtonX2.Click

DimUserAsNewDBuser

IfTextBoxX1.Text=""OrTextBoxX2.Text=""OrTextBoxX3.Text=""Then

MsgBox("密码不能为空!

")

ElseIfTextBoxX1.Text<>LoginForm.TextBox2.TextThen

MsgBox("旧密码错误!

")

ElseIfTextBoxX2.Text<>TextBoxX3.TextThen

MsgBox("确认密码和新密码不相同!

")

Else

User.ModifyPassword(LoginForm.TextBox1.Text,TextBoxX2.Text)

EndIf

EndSub

PrivateSubButtonItem13_Click(ByValsenderAsSystem.Object,ByValeAsS

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1