软件工程课程设计论文Word文件下载.docx

上传人:b****1 文档编号:4919713 上传时间:2023-05-04 格式:DOCX 页数:33 大小:645.85KB
下载 相关 举报
软件工程课程设计论文Word文件下载.docx_第1页
第1页 / 共33页
软件工程课程设计论文Word文件下载.docx_第2页
第2页 / 共33页
软件工程课程设计论文Word文件下载.docx_第3页
第3页 / 共33页
软件工程课程设计论文Word文件下载.docx_第4页
第4页 / 共33页
软件工程课程设计论文Word文件下载.docx_第5页
第5页 / 共33页
软件工程课程设计论文Word文件下载.docx_第6页
第6页 / 共33页
软件工程课程设计论文Word文件下载.docx_第7页
第7页 / 共33页
软件工程课程设计论文Word文件下载.docx_第8页
第8页 / 共33页
软件工程课程设计论文Word文件下载.docx_第9页
第9页 / 共33页
软件工程课程设计论文Word文件下载.docx_第10页
第10页 / 共33页
软件工程课程设计论文Word文件下载.docx_第11页
第11页 / 共33页
软件工程课程设计论文Word文件下载.docx_第12页
第12页 / 共33页
软件工程课程设计论文Word文件下载.docx_第13页
第13页 / 共33页
软件工程课程设计论文Word文件下载.docx_第14页
第14页 / 共33页
软件工程课程设计论文Word文件下载.docx_第15页
第15页 / 共33页
软件工程课程设计论文Word文件下载.docx_第16页
第16页 / 共33页
软件工程课程设计论文Word文件下载.docx_第17页
第17页 / 共33页
软件工程课程设计论文Word文件下载.docx_第18页
第18页 / 共33页
软件工程课程设计论文Word文件下载.docx_第19页
第19页 / 共33页
软件工程课程设计论文Word文件下载.docx_第20页
第20页 / 共33页
亲,该文档总共33页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

软件工程课程设计论文Word文件下载.docx

《软件工程课程设计论文Word文件下载.docx》由会员分享,可在线阅读,更多相关《软件工程课程设计论文Word文件下载.docx(33页珍藏版)》请在冰点文库上搜索。

软件工程课程设计论文Word文件下载.docx

SQLsever使用更加简单灵活的对象模型,适用于各种程序设计语言。

SQLsever提供执行以下操作方式:

(1)连接到数据源。

(2)指定访问数据源的命令,可以在命令中指定参数。

(3)执行命令,例如一个SELECT语句。

(4)在适当情况下,可以把缓存行的更改内容写回数据库中,更新数据源。

(5)提供常规方法检测错误,错误通常由建立连接或执行命令造成,涉及到SQL的error对象。

2系统分析

2.1总体设计思想及工作流程

用户必须通过已经注册的帐号和密码才能进行对该系统的管理与应用,否则在登录系统前要进行新账号的注册;

管理员通过输入密码和帐号可以对数据库的数据进行各种操作,而普通用户仅仅可以进行一部分的操作;

用户根据自己的实际情况选择相应的功能来提取自己所需信息。

(1)学生信息管理系统的功能为显示主要操作页面,通过密码验证登陆界面,档案信息处理功能。

通过密码验证登陆,可实现安全登录,方便可靠。

学生信息处理功能包括输入学生信息,显示学生的档案信息,学生档案信息条件查询(分为:

按学生姓名进行查询,按学生学号进行查询),更新学生档案信息。

(2)学生信息管理系统的功能模块有:

系统登陆界面,美观大方,按enter键进入密码验证登陆界面,输入正确密码登陆主菜单选择框架界面,方便用户对程序个功能进行选择,选择要实现的功能按enter键进入该功能。

1.输入学生档案信息。

2.显示学生的档案信息

3.学生档案信息条件查询

4.更新学生档案信息。

0.退出,谢谢使用!

!

程序分为多个小模块,通过调用实现各种功能,增强了程序的可建设性。

2.2业务需求

(1)安全性:

用户必须通过帐号和密码才能进行对该系统的管理。

(2)权限分配:

超级管理员通过输入密码和帐号可以对数据库的数据进行各种操作,而普通用户仅仅可以进行一部分的操作。

(3)易操作性:

可以快速进行查询操作,进行数据的汇总。

2.3数据流图

用户的需求具体体现在各种信息的提供、保存、更新、查询和统计上,这就要求数据库结构应充分满足各种信息的输入和输出。

系统应定义数据结构、收集基本数据以及设置数据处理的流程,组成一份详尽的数据字典,为以后的具体设计打下基础与伏笔。

在仔细分析、调查有关学生信息管理需要的基础上,得到了本系统的流程图:

图3.2总数据流图

图3.3零层数据流图

图3.3一层数据流图

2.2总体设计流程图

图2 总体设计流程图

该流程图为此次学生信息查询系统的总体流程图,用户进入界面以后可以看到登陆密码界面,密码输入正确进入主菜单选择框架界面,1为输入学生信息档案,2为显示学生档案,3为学生信息档案查询,4为更新学生档案,0为退出系统。

用户可以根据自己的需求方便快捷的做出自己的选择。

密码登陆函数流程图:

该函数为密码登陆函数模块,当输入的密码不正确的时候,系统会提示“密码输入错误,请重新输入”,直到输入正确密码为止。

选择框架函数流程图:

进入学生档案管理系统时显示程序名称和选择框架主菜单,提示用户进行选择,完成相应任务。

此代码被main()函数调用。

输入信息函数流程图:

输入学生信息函数模块,用户可以根据提示的信息来进行每一步的输入操作,当输入不当时,系统会自动提示,并让用户进行正确的操作。

在此系统中,要求用户输入的只有字符型和数值型数据,设计了相应的函数来进行数据校验工作,保证数据输入的准确性。

显示信息流程图:

当用户进入查询信息模块时,系统会显示内部存储的内容。

查询信息流程图:

当用户执行此查询任务时,系统会提醒用户进行查询字段的选择,即按学号或姓名进行查询。

若此学生档案信息记录存在,则会显示该省的档案信息。

此函数完成了节点定位的功能。

更新信息流程图:

在更新学生档案信息的操作中,系统会先按输入的学号查询到该生档案信息记录,然后按顺序填入要修改的学生信息。

3系统设计

3.1系统功能结构图

设计数据库系统时应充分满足各种信息的输入和输出。

据此,结学生信息管理系统所需完成的主体任务。

学生信息管理系统主要任务如下:

(1)基本信息的输入。

包括学籍(学生基本)信息,班能、课程和成绩等住处的输入。

(2)基本信息的修改。

包括学籍信息、班级、课程和成绩等信息的修改。

(3)基本信息的查询。

包括学籍信息和成绩信息等的查询。

(4)年级信息及班级信息的设置等。

(5)学校基本课程信息的输入、修改和设置。

基于需求分析及主要任务的表述,可对上述各项功能按照结构化程序设计的要求进行集中、分层结构化,自上而下逐层设置得到系统功能模块结构图:

图3.1系统功能结构图

4系统数据库设计

4.1系统E-R图

概念结构设计就是E-R方法的分析与设计,概念结构设计是整个数据库设计的关键。

在此,将使用实体—联系(E-R)模型来描述系统的概念结构,同时设计出能够满足用户需求的的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。

这也实体包括各种具体的实际信息,通过相互之间的作用形成数据的流动。

本程序根据上面的设计规划出的实体有:

学籍实体、班级实体、年级实体、课程实体与成绩实体,学生信息管理系统数据库E-R模型,如下图所示:

图4.1学生信息管理系统E-R模型图

4.2数据表的创建

根据系统特点,由数据模型利用Oracle10g进行数据库的详细设计,学生信息管理系统数据库中各个表格的设计结果如下:

表1:

学籍信息表

表2:

学生成绩信息表

表3:

班级信息表

表4:

年级课程设置表

表5:

课程基本信息表

表6:

系统用户表

4.3存储过程和触发器设计

为了提高该系统的运行环境,后台有关数据的操作部分使用了存储过程和触发器。

1.创建的存储过程进行添加班级信息,代码如下:

createorreplaceprocedureinsertclass

(p_class_noinclass_no%type,

p_gradeingrade%type,

p_directorindirector%type,

p_classroom_noinclassroom_no%type

isv_countnumber;

begin

selectcount(*)intov_countfromclass_infowhereclass_no=p_class_no;

ifv_count=0then

insertintoclass_infovalues(p_class_no,p_grade,p_director,p_classroom_no);

else

dbms_output.put_line('

班号已经存在,请重新输入班号'

);

endif;

endinsertclass;

2.存储过程的调用代码:

PrivateSubCommand1_Click()

DimsqlconAsNewADODB.Connection

DimmrcAsADODB.Recordset

DimMsgTextAsString

DimtxtSQLAsString

DimcmdAsNewADODB.Command

DimclassNO,grad,DIRECTO,CLASSROOMNO

sqlcon.Open"

Provider=OraOLEDB.Oracle.1;

Password=1234;

PersistSecurityInfo=True;

UserID=CC;

DataSource=orcl"

IfNotTesttxt(txtClassno.Text)Then

MsgBox"

请输入班号!

"

vbOKOnly+vbExclamation,"

警告"

txtClassno.SetFocus

ExitSub

EndIf

IfNotTesttxt(comboGrade.Text)Then

请选择年级!

comboGrade.SetFocus

IfNotTesttxt(txtDirector.Text)Then

请输入班主任姓名!

txtDirector.SetFocus

IfNotTesttxt(txtClassroom.Text)Then

请输入教室房间号!

txtClassroom.SetFocus

IfNotIsNumeric(Trim(txtClassno.Text))Then

请输入数字!

cmd.ActiveConnection=sqlcon

cmd.CommandText="

insertclass"

cmd.CommandType=adCmdStoredProc

SetclassNO=cmd.CreateParameter("

@CLASS_NO"

adVarChar,adParamInput,50)

cmd.Parameters.Append(classNO)

Setgrad=cmd.CreateParameter("

@GRADE"

cmd.Parameters.Append(grad)

SetDIRECTO=cmd.CreateParameter("

@DIRECTOR"

cmd.Parameters.Append(DIRECTO)

SetCLASSROOMNO=cmd.CreateParameter("

@CLASSROOM_NO"

cmd.Parameters.Append(CLASSROOMNO)

cmd("

)=txtClassno.Text

)=comboGrade.Text

)=txtDirector.Text

)=txtClassroom.Text

Setmrc=cmd.Execute

cmd.Parameters.Delete("

添加班级信息成功!

添加班级信息"

EndSub

3.创建触发器:

createorreplacetriggercourse_info_del

beforedeleteoncourse_info

foreachrow

declare

--localvariableshere

deletefromgradecourse_info;

end;

4.4数据库的连接

配置文件连接数据库的代码:

ConnectString="

5系统实现

根据整个系统的总体设计以及相关子系统的相关模块功能的设计,我们进行了系统的软件开发。

详细设计和功能展示如下:

5.1系统实现工具与支持平台

(1)用户界面

本系统采用MicrosoftVisualBasic6.0设计,用户交互界面采用的是基于Windows的窗口界面。

(2)开发和运行环境

工具软件:

VisualBasic

系统软件:

Oracle10g

开发环境:

WindowsXPProfessional

运行环境:

Windows98\NT\2000\XP\2003

硬件配置:

PentiumⅢ以上CPU、256MB以上的内存、4GB以上的硬盘空间

5.2公用模块的设计

以下为系统主控窗口的界面截图:

图5.1主控窗口

在系统中创建公用模块,存放在整个工程项目中会调用到的函数、变量等。

代码如下:

PublicfMainFormAsfrmMain

PublicUserNameAsString

SubMain()

DimfLoginAsNewfrmLogin

fLogin.ShowvbModal

IfNotfLogin.OKThen

'

LoginFailedsoexitapp

End

UnloadfLogin

SetfMainForm=NewfrmMain

fMainForm.Show

PublicFunctionConnectString()_

AsString

'

returnsaDBConnectString

ConnectString="

EndFunction

PublicFunctionExecuteSQL(ByValSQL_

AsString,MsgStringAsString)_

AsADODB.Recordset

executesSQLandreturnsRecordset

DimcnnAsADODB.Connection

DimrstAsADODB.Recordset

DimsTokens()AsString

OnErrorGoToExecuteSQL_Error

sTokens=Split(SQL)

Setcnn=NewADODB.Connection

cnn.OpenConnectString

IfInStr("

INSERT,DELETE,UPDATE"

_

UCase$(sTokens(0)))Then

cnn.ExecuteSQL

MsgString=sTokens(0)&

_

"

querysuccessful"

Else

Setrst=NewADODB.Recordset

rst.CursorLocation=adUseClient

rst.OpenTrim$(SQL),cnn,_

adOpenKeyset,_

adLockOptimistic

rst.MoveLast'

getRecordCount

SetExecuteSQL=rst

MsgString="

查询到"

&

rst.RecordCount&

条记录"

ExecuteSQL_Exit:

Setrst=Nothing

Setcnn=Nothing

ExitFunction

ExecuteSQL_Error:

查询错误:

Err.Description

ResumeExecuteSQL_Exit

PublicFunctionTesttxt(txtAsString)AsBoolean

IfTrim(txt)="

Then

Testtxt=False

Testtxt=True

5.3系统界面设计:

图5.2系统登录界面

图5.3添加课程信息界面

图5.4添加学籍信息界面

图5.5查询学籍信息界面

图5.5设置年级课程信息界面

5.4系统核心代码

(1)添加班级信息是通过存储过程的调用实现的,部分源代码:

cmd.Parameters.Delete("

MsgBox"

(2)查询学生成绩模块的部分代码:

PrivateSubcmdInquire_Click()

Dimdd(4)AsBoolean

txtSQL="

select*fromRESULT_INFOwhere"

IfCheck1(0).ValueThen

IfTrim(txtSID.Text)="

sMeg="

学号不能为空"

MsgBoxsMeg,vbOKOnly+vbExclamation,"

txtSID.SetFocus

IfNotIsNumeric(Trim(txtSID.Text))Then

dd(0)=True

txtSQL=txtSQL&

student_ID='

Trim(txtSID.Text)&

IfCheck1

(1).ValueThen

IfTrim(txtName.Text)="

姓名不能为空"

txtName.SetFocus

dd

(1)=True

Ifdd(0)Then

andstudent_Name='

txtName.Text&

student_Name='

IfCheck

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

当前位置:首页 > 高等教育 > 历史学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2