数据库SQL课程设计 30Word文档格式.docx
- 文档编号:4409299
- 上传时间:2023-05-03
- 格式:DOCX
- 页数:28
- 大小:385.05KB
数据库SQL课程设计 30Word文档格式.docx
《数据库SQL课程设计 30Word文档格式.docx》由会员分享,可在线阅读,更多相关《数据库SQL课程设计 30Word文档格式.docx(28页珍藏版)》请在冰点文库上搜索。
工作计划
周一听取教师布置设计的任务及要求。
周二学生查阅相关资料,进行数据库设计。
周三至周五:
详细设计与界面设计。
周一至周四程序设计与上机,调试源程序。
周五书写课程设计任务书。
参考资料
《数据库系统概论》
《数据库系统概论实验指导书》自编
《数据库系统概论课程设计大纲》等自编
指导教师评语
教师:
学生:
说明:
此表一式四份,学生、指导教师、教研室、系部各一份。
可加附页。
2011年12月31
目录
第1章绪论1
1.1开发背景与意义1
1.2开发目标1
1.3题目现状与前景2
1.4开发方法与工具2
第2章可行性分析3
2.1技术可行性3
2.2管理上的可行性3
2.3安全上的可行性3
第3章需求分析4
3.1业务流程图4
3.2数据流图5
3.3数据字典6
第4章总体设计8
4.1功能模块划分8
4.2功能模块描述8
第5章数据库设计9
5.1概念设计9
5.2逻辑设计10
5.3物理设计11
第6章详细设计12
6.1界面设计12
6.2主要程序设计16
第7章系统的调试与测试20
7.1软件测试方案20
7.2测试的基本方法20
7.3测试用例设计20
7.4系统的测试21
第8章总结24
参考文献25
第1章绪论
1.1开发背景与意义
计算机已经成为我们学习和工作的得力助手。
今天,计算机的价格已经十分低廉,性能却有了长足的进步。
它已经被应用于许多领域,计算机之所以如此流行的原因主要有以下几个方面:
首先,计算机可以代替人工进行许多繁杂的劳动;
其次,计算机可以节省许多资源;
第三,计算机可以大大的提高人们的工作效率;
第四,计算机可以使敏感文档更加安全,等等。
在大中专中用计算机管理学籍信息的意义:
现在我国的大中专校中学籍的管理水平还停留在纸介质的基础上,这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。
我作为一个计算机应用的专科生,希望可以在这方面有所贡献。
改革的总设计师邓小平同志说过“科学技术是第一生产力”,我希望能用我四年的所学编制出一个实用的程序来帮助大中专进行更有效的信息管理。
归纳起来,好处大约有以下几点:
1.可以存储学生的基本信息以及历届的学生信息,安全、高效;
2.只需一到二名信息录入员即可操作系统,节省大量人力;
3.可以迅速查到所需信息。
1.2开发目标
由于本系统管理的对象单一,都是在校学生,且每个数据内容具有较强的关联性,涉及的计算过程不是很复杂。
因此,比较适合于采用数据库管理。
且学校用于学生管理的微机都是PIII以上的机器,在存储量、速度方面都能满足数据库运行的要求。
在技术难度方面,由于有指导老师的指导和相关参考文献,特别是网上资料,特别是参考其它程序的功能,因此完全可以实现。
本系统的设计是在Windows98中文版操作系统环境下,使用VisualBasic6.0中文版开发成功的。
数据库是MIS中的重要支持技术,在MIS开发过程中,如何选择数据库管理是一个重要的问题,目前,数据库产品较多,每种产品都具有各自的特点和适用范围,因此,在选择数据库时,应考虑数据库应用的特点及适用范围。
1.3题目现状与前景
21世纪以来,人类经济高速发展,人们发生了日新月异的变化,特别是计算机的应用及普及到经济和社会生活的各个领域。
使原本的旧的管理方法越来越不适应现在社会的发展。
许多人还停留在以前的手工操作。
这大大地阻碍了人类经济的发展。
为了适应现代社会人们高度强烈的时间观念,学校信息管理系统软件为学校办公室带来了极大的方便。
我所开发的这个系统所采用的是当前较为流行的编程软件VISUALBASIC6.0作为实现语言,以数据库MicrosoftSQLServer2000作为系统的后台操作,其功能在系统内部有源代码直接完成。
我们只需按系统要求输入即可操作性为将来学校上网做好准备。
跟据1999年中国电信的调查报告显示我国的上网人数已达到890万,互联网已经十分普及,学校往界的毕业生希望能在世界的任何一个角落查到自己校友的信息,本系统为学校将来的上网作了先期工作,比如数据库的建立。
根据实际情况,我们使用原型法(RapidPrototyping)即以少量代价快速地构造一个可执行的软件系统模型。
使用户和开发人员可以较快地确定需求,然后采用循环进化的开发方式,对系统模型作连续的精化,将系统需具备的性质逐渐增加上去,直到所有的性质全部满足。
此时模块也发展成为最终产品了。
1.4开发方法与工具
本系统完成系统的登录,数据的添加删除修改等基本操作。
数据库采用关系数据库ACCESS2003。
所使用的语言、工具是VB6.0+ACCESS2003+WINDOWSXP。
所采用的技术、系统结构是ADO数据库连接技术,系统结构为C/S结构。
第2章可行性分析
可行性研究的目的就是弄清楚我们要开发的项目在技术、经济、社会等方面是不是可行的。
研究的过程,实际上就是一次大大简化了的系统分析和系统设计的过程。
在这个过程中我们不是要解决问题,而是看研究这个问题存在哪些风险,是否值得企业去应用它。
2.1技术可行性
由于VB语言简单、易学的优点,又增强了可视化、数据库及Internet编程功能,很容易就可以进行系统开发。
因此系统开发工具可以采用VisualBasic进行开发。
而对数据库的建立,由于建立的数据库主要是对光纤的信息进行管理,所以可以采用微软公司开发的MicrosoftAccess。
该软件简单易懂,应用广泛,比较适合新手上路使用,而且建立的数据库较为安全。
2.2管理上的可行性
因为系统主要应用于学院内部,而不具备网络查找功能,因此在实现时可以做成单机版,对管理员赋予数据录入、查询、修改以及对数据库的清零等功能。
2.3安全上的可行性
在建立数据库时可以通过对数据库的设计用户名和密码进行保密,以及在建立数据库以后可以对数据进行压缩等技术,保证数据的安全,使数据库具有安全保障。
第3章需求分析
用户
3.1业务流程图
图3.1班级管理业务流程图
图3.2档案管理业务流程图
图3.3课程管理业务流图
3.2数据流图
由于本系统的数据模块较多,下面仅以学生成绩管理模块为例来进行编制。
图3.4学生成绩管理1层数据流图
图3.5学生成绩管理系统2层数据流图
3.3数据字典
1.表名:
课程
主键:
课程号
表结构:
课程号文本
课程名称文本
授课教师数字
2.表名:
学生
学号
学号文本
班级文本
名字文本
性别文本
出生年月日期/时间
民族文本
父母姓名文本
地址文本
邮政编码文本
电话号码文本
院系文本
专业文本
附注文本
3.表名:
学生与课程
主键:
课程号,学号
表结构:
学号数字
备注文本
成绩数字
4.表名:
超级用户
UseID
UseID自动编号
Password文本
UserName文本
第4章总体设计
4.1功能模块划分
图4.1系统功能模块图
4.2功能模块描述
(1)学籍查看:
查看学生的基本信息。
(2)信息输入:
输入相关的信息。
(3)课程添加:
添加所学的课程。
(4)添加成绩:
添加所学课程的考试成绩。
(5)学生查询:
查看学生的相关信息。
(6)成绩查询:
查看学生成绩。
(7)打印报表:
将相关的报表打印出来。
(8)用户登录:
登录到主界面。
(9)安全退出:
在不使用该系统时安全离开该系统。
第5章数据库设计
5.1概念设计
1.系统的E—R图如图所示。
(1)课程信息:
课程号,课程名称,授课教师。
(2)学生与课程信息:
学号,课号,成绩,备注。
(3)学生基本信息:
学号,姓名,性别,班级,出生年月,民族,地址,电话。
(4)系统用户信息:
用户名,用户密码。
图5.1系统E-R图
5.2逻辑设计
表5.1超级用户表
列名
数据类型
说明
UserID
自动编号
UserName
文本
用户名
UserPWD
用户密码
表5.2学生表
NOTNULL
名字
性别
班级
出生年月
日期/时间
民族
院系
附注
专业
电话
邮政编码
父母姓名
地址
表5.3学生与课程表
课程名称
成绩
数字
备注
表5.4课程表
课程名
授课教师
5.3物理设计
物理结构设计依赖于给定的计算机系统,为一个给定的逻辑数据模型选取最适合应用要求的物理结构过程,存取方法是快速存取数据库中数据的技术.为此首先要对运行的事务进行详细分析,获得选择物理数据库设计所需要的参数然后充分了解系统提供的存取方法和存储结构.存取方法是快速存取数据库中数据的技术.数据库管理系统一般都提供多种存取方法.常用的存取方法如下:
1.索引存取方法。
2.聚簇存取方法。
3.HSAH存取方法。
第6章详细设计
6.1界面设计
(1)主页面
图6.1系统主界面
(2)登陆界面
图6.2系统登陆界面
(3)录入界面
图6.3系统信息录入界面
(4)成绩录入界面
图6.4系统成绩录入界面
(5)学生基本信息录入界面
图6.5学生基本信息录入界面
(6)查询向导界面
图6.6查询向导界面
6.2主要程序设计
1.Module1模块代码设计
OptionExplicit
PublicUserTypeAsBoolean'
如果是true那么是超级用户
PubliccnAsADODB.Connection'
公共连接对象
PublicsearchSQLAsString
PublicIsAdminAsBoolean'
判断是否为系统管理员登陆
PublicDeclareFunctionFindWindowLib"
user32"
Alias"
FindWindowA"
(ByVallpClassNameAsString,ByVallpWindowNameAsString)AsLong
PublicDeclareFunctionShellExecuteLib"
shell32.dll"
ShellExecuteA"
(ByValhwndAsLong,ByVallpOperationAsString,ByVallpFileAsString,ByVallpParametersAsString,ByVallpDirectoryAsString,ByValnShowCmdAsLong)AsLong
创建一个连接
PublicFunctionMakeConnection()AsString
Setcn=NewADODB.Connection
OnErrorGoToconnecterr
Withcn
.CursorLocation=adUseClient
'
.ConnectionString="
provide=sqloledb:
datasourse=学籍.mdb:
DefaultDir="
&
CheckPath(App.path)&
"
;
ID=;
PWD=;
PASSWORD=197967yh"
.ConnectionString="
DRIVER={MicrosoftAccessDriver(*.mdb)};
"
_
DBQ=db5.MDB;
UID=;
数据库密码,防止被人用其它软件打开数据库
.Open
EndWith
MakeConnection="
OK"
ExitFunction
connecterr:
DimiAsInteger
DimsErrorAsString
Ifcn.Errors.Count>
0Then
Fori=0Tocn.Errors.Count-1
sError=sError&
cn.Errors(i).Number&
:
cn.Errors(i).Description&
vbCrLf
Nexti
EndIf
MakeConnection=sError
EndFunction
PublicFunctionAnalyseStdNum(UstdnumAsString,LstdnumAsString)AsInteger
98076030“98”是指哪一届;
“07”是指市校的代号;
“6”是指分校的代号;
“0”是指班级号;
“30”是指学号
IfLen(Ustdnum)<
>
8OrLen(Lstdnum)<
8Then
AnalyseStdNum=-1
Else
IfUstdnum=LstdnumThen'
单一学号的查找
AnalyseStdNum=8
ElseIfLeft$(Ustdnum,6)=Left$(Lstdnum,6)Then'
班级单位查找
AnalyseStdNum=6
ElseIfLeft$(Ustdnum,5)=Left$(Lstdnum,5)Then'
分校单位查找
AnalyseStdNum=5
ExitFunction
ElseIfLeft$(Ustdnum,4)=Left$(Lstdnum,4)Then'
市校单位查找
AnalyseStdNum=4
ElseIfLeft$(Ustdnum,2)=Left$(Lstdnum,2)Then'
同届学生查找
AnalyseStdNum=2
AnalyseStdNum=0
PublicSubMakeCenter(frmAsForm)'
使窗口显示在屏幕中央
Dimintx2AsInteger,inty2AsInteger
intx2=(Screen.Width-frm.Width)/2
inty2=(Screen.Height-frm.Height)/2
frm.Left=intx2
frm.Top=inty2
EndSub
PublicFunctionCheckPath(pathAsString)AsString'
检测数据库路径是否以"
\"
结束
IfRight$(path,1)="
Then
CheckPath=path
CheckPath=path&
'
程序入口
SubMain()
searchSQL="
SELECT*FROM学生"
UserType=False
IsAdmin=False
LoadDlgLogin'
载入登陆对话框
DlgLogin.Show
第7章系统的调试与测试
7.1软件测试方案
进行系统测试主要有两种方法:
静态测试和动态测试,我们主要采用动态测试的方法。
动态测试是通过运行程序来检验软件的动态特性和运行结果的正确性,并根据程序的运行过程对程序进行评价的过程。
动态测试包括运行、解释和模拟。
本系统主要使用以界面为基础的测试。
以界面为基础的测试仅仅依靠系统与其运行环境之间的界面来选择和产生测试数据,而不管系统的具体需求和具体实现细节。
包括系统输入,输出数据的类型取值范围以及取值的概率分布等等。
7.2测试的基本方法
测试有两种方法:
黑盒测试和白盒测试。
黑盒测试又称为功能测试,在程序接口进行,只检查程序功能是否能够按照规格说明书的规定正确使用,程序是否能适当地接收输入数据并发生正确的输出信息,而且要能够保持外部信息的完整性。
白盒测试又叫结构测试,完全了解程序的结构和处理过程,这种方法按照程序内部的逻辑测试程序,检验程序中每条通路是否都能按照预定要求正确工作。
7.3测试用例设计
黑盒测试用例设计就是使用详细设计导出测试用例。
用例之间不重复设计,专为特殊目标和功能而编制每组用例都包括测试输入、测试步骤和预期结果,通过执行测试用例来测试程序路径,核实其是否满足特定需求。
测试用例的设计原则更趋向于针对软件产品的功能、业务规则和业务处理,因此对软件的每个特定功能路径的测试构成了一个个测试用例。
测试用例的设计数量取决于其是否完成了功能需求的测试,是否完成了路径的测试。
本系统测试用例如下:
表7.1学生信息管理的测试用例
用例号
测试标题
测试步骤
预期结果
01
页面显示
从测试用例入口处进入
页面元素完整显示、页面与设计时一至
02
学号:
成功输入
输入已存在的学号
学号录入:
通过验证
数据输入超过规定长度范围
03
姓名:
输入与学号相对应的姓名
输入成功
04
信息显示:
成功
点击确定按钮
页面信息完整显示
05
输入有效的校验
输入不存在的学号
页面信息显示失败,并提示:
该学号不存在
7.4系统的测试
7.4.1模块测试:
也叫单元测试,目的是保证每一个模块作为一个单元能正确运行,本测试所发现的往往是编码和详细设计的错误。
本程序模块设计如下:
(1)用户登录窗口测试:
该测试的目的是保证登陆窗口的正确性与在错误发生时的容错与纠错性。
具体通过在登陆框中输入空用户名,和错误的用户密码来检测系统的出错运行情况。
要求系统在遇到这些情况时能给出正确的错误提示。
(2)添加用户窗口测试:
该测试的目的是保证添加用户窗口的正确性与在数据输入不正确时的容错与纠错性。
具体通过在添加记录框中输入重复的用户名,空用户名和密码来检测系统的出错运行情况。
(3)修改用户密码窗口测试:
该测试的目的是保证修改用户密码窗口的正确性与在数据输入不正确时的容错与纠错性。
具体通过在修改用户密码框中输入错的原用户密码,以及空的新用户密码,来检测系统的出错运行情况。
(4)修改学籍信息窗口测试:
该测试的目的是保证修改学籍信息窗口的正确性与在数据输入不正确时的容错与纠错性。
具体通过在修改学籍信息框中输入空的学号,已存在的学号,或者错误的日期格式,来检测系统的出错运行情况。
(5)录入学籍窗口测试:
该测试的目的是保证录入学籍信息窗口的正确性与在数据输入不正确时的容错与纠错性。
(6)添加课程信息窗口测试
该测试的目的是保证添加课程信息窗口的正确性与在数据输入不正确时的容错与纠错性。
具体通过在添加课程信息窗口中输入空的课程号,已存在的课程号,来检测系统的出错运行情况。
(7)添加成绩窗口信息测试
该测试的目的是保证添加成绩信息窗口的正确性与在数据输入不正确时的容错与纠错性。
具体通过在添加成绩信息窗口中输入空的姓名,空的考试成绩,来检测系统的出错运行情况。
(8)删除成绩信息窗口测试
该测试的目的是保证删除成绩信息窗口的正确性与在数据输入不正确时的容错与纠错性。
具体通过在删除成绩信息窗口中输入已有的成绩给出删除成功的提示。
(9)查询成绩信息窗口测试
该测试的目的是保证查询成绩信息窗口的正确性与在数据输入不正确时的容错与纠错性。
具体通过在查询成绩窗口中输入空的学号错误的学号空的班号错误的班号。
(10)查询基本信息窗口测试
该测试的目的是保证查询学籍基本信息窗口的正确性与在数据输入不正确时的容错与纠错性。
具体通过在查询基本信息窗口中输入空的学号、班级、专业、院系或错误输入,来检测系统的出错运行情况。
7.4.2集成测试:
包括系统测试和子系统测试。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库SQL课程设计 30 数据库 SQL 课程设计