数据库课程设计说明书.docx
《数据库课程设计说明书.docx》由会员分享,可在线阅读,更多相关《数据库课程设计说明书.docx(17页珍藏版)》请在冰点文库上搜索。
数据库课程设计说明书
数据库课程设计说明书
引言:
我们正在进入信息化时代,而数据库设计更加成为重中之重,因此受到了广大开发人员的喜爱。
例如,我们要管理某个高校的图书馆图书的出借,需要设计图书管理系统;汽车的修理会涉及到户主名称,车型,修理所用元器件等,这又要求我们为之设计一个汽车修理管理系统等。
总之,数据库管理系统越来越被我们广泛的应用,这正是信息要求。
人们对数据库管理的要求也越来越高,这就要求我们的软件设计人员有更高的计算机水平和先进的软件设计思想.VisualFoxPro8.0是一个优秀的个人计随着计算机技术的快速发展,数据库管理技术的应用也在高速发展,算机数据库管理系统,它提供了一个强有力的项目管理器,帮助用户来管理、维护项目。
按一定的顺序和逻辑关系对应用系统的文件进行有效组织,使用VisualFoxPro的项目管理器,它可以把各成员管理的井井有条。
根据上述分析我们首先在排课管理管理系统中建立项目管理器,命名为排课管理系统,然后,将所建立的各项数据项,如表单,菜单、自由表以及数据库、查询表单以及统计表单等等,都放在其中,管理起来十分方便。
1.科目:
数据库课程设计
2.目的:
掌握数据库设计概念原理及相关软件的基本应用。
3.名称:
排课管理系统
4.软件:
VisualFoxpro8.0
一.课程设计目的
目前,我国的各行各业已经走入一个全面竞争的时代,一个现代人要适应这个社会只有通过不断的学习来提高自己,其中计算机应用能力是一个很重要的方面。
因此掌握一定的计算机应用知识具备一定的实际操作技能,熟练运用几种软件完成实际工作是各行各业人员的共同需求。
通过软件设计对数据库更深的了解,提高自己的综合设计能力。
尤其是怎样具备建立数据库的基本思想,能从实践的基础上深化课堂知识,从而不断地学习。
二.课程设计内容
1.题目简介及设计说明:
学校排课管理系统主要功能模块有教室查询、班级查询以、课程录入、教室录入以及课程的统计等,能够实现课程的录入功能,实现课程的查询功能,实现课程的统计功能,实现对报表的打印功能。
完善丰富的信息描述字段,我们对学生和教工提供丰富的信息字段,可以更多的了解学生和教工的信息,以便更好的进行工作.查询模块提供用户自定义查询接口,丰富的查询条件。
可以轻松实现课程的录入、查询打印等功能,简单却实用。
快捷方便的信息输入,系统在数据输入量大的地方充分考虑操作员的习惯,极大的提高输入速度,在课程录入、教室录入等地方就会体会到。
2.数据库的设计:
(1).需求分析:
数据库需求分析是数据库设计的第一个阶段,也是非常重要的一个阶段。
在这个阶段主要是搜集基本数据,数据结构以及数据处理的流程,组成一份详尽的数据字典,为以后进一步设计打下基础。
在仔细调查用户的需求之后,我们得到下图流程:
系统结构框图:
统计
(2).数据库的建立
本系统所用到的表
1.系统所用的表设计
1).课程设置表:
2).教室信息表
3).用户表
系统所用的表单
1.登录表单
登录表单的作用:
完整安全的用户组权限管理,系统充分考虑了各种安全问题,在操作安全上,实行用户工作组和用户管理,对于每一个用户都有他自己所能操作的权限,在表单控键中选择“标签”按钮,为登录表单添加两个标签,然后在表单控键中选择“文本框”,为登录表单添加两个标签按钮,把二者的Name属性分别设置为txtName和txtPassword,并把txtPassword文本框的PasswordChar属性设置为*分别再在表单控键中选择“按钮”,为登录表单添加两个按钮,分别取名为“确定”和“取消”。
双击“确定”按钮,在确定按钮的Click事件中输入以下源代码:
cName=alltrim(thisform.txtName.value)
cPassword=alltrim(thisform.txtPassword.value)
ifempty(cName)
messagebox("用户名不能为空",16,"用户登录验证")
thisform.txtName.value=""
thisform.txtName.setfocus
return
endif
ifempty(cPassword)
messagebox("口令不能为空",16,"用户登录验证")
thisform.txtPassword.value=""
thisform.txtPassword.setfocus
return
endif
locateforalltrim(用户名)=cname
ifnotfound()
messagebox("用户名输入错误!
",16,"用户登录验证")
thisform.txtName.selstart=0
thisform.txtName.sellength=len(cName)
thisform.txtName.setfocus
return
endif
ifalltrim(口令)==cPassword
messagebox("登录成功!
",64,"用户登录验证")
thisform.release
capp_currentuser=cname
capp_currentpsd=cpassword
lapp_Logon=.T.
else
messagebox("口令错误!
",16,"用户登录验证")
thisform.txtPassword.value=""
thisform.txtPassword.setfocus
endif
在int过程中输入如下代码:
parameterstxtname,txtpassword
domenu\排课菜单.mpr
双击“取消”按钮,在“取消”按钮的Click事件中输入以下源代码:
nr=messagebox("你选择了退出登录,是否继续?
",68,"用户登录")
ifnr=6
thisform.release
clearevents
endif
制作好的登录表单如图所示:
登录表单
点击关闭窗口键,在弹出的“是否保存”对话框中选择“是”。
至此我们的登录表单就设计完毕了,然后我们可以点击项目管理器中的“运行”按钮,运行我们的登录表单,输入用户名后如果选择“确定”按钮,则会出现“登录成功”界面,如果选择了“取消”按钮则会出现“你选择了退出,是否继续?
”。
提示界面。
教室信息表单
1)在设计的“教室使用表单”的[上一条]按钮的click事件中加入如下代码:
select教室信息
thisform.Text1.value=教室信息.编号
thisform.Text2.value=教室信息.课程
thisform.Text3.value=教室信息.星期
thisform.Text4.value=教室信息.节次
thisform.Text5.value=教室信息.班级
thisform.Text6.value=教室信息.容量
ifbof()
messagebox('已到首记录!
!
','提示')
else
skip-1
thisform.text1.refresh
thisform.text2.refresh
thisform.text3.refresh
thisform.text4.refresh
thisform.text5.refresh
thisform.text6.refresh
endif
2).在[下一条]按钮的click事件中假如如下代码:
select教室信息
thisform.Text1.value=教室信息.编号
thisform.Text2.value=教室信息.课程
thisform.Text3.value=教室信息.星期
thisform.Text4.value=教室信息.节次
thisform.Text5.value=教室信息.班级
thisform.Text6.value=教室信息.容量
ifeof()
messagebox('已到尾记录!
!
','提示')
else
skip
thisform.text1.refresh
thisform.text2.refresh
thisform.text3.refresh
thisform.text4.refresh
thisform.text5.refresh
thisform.text6.refresh
endif
3).在[录入]按钮的click事件中加入如下代码:
select课程设置
appendblan
replace课程with(thisform.text1.value)
replace主讲with(thisform.text2.value)
replace学时with(thisform.text3.value)
replace学分with(thisform.text4.value)
replace班级with(thisform.text5.value)
replace人数with(thisform.text6.value)
thisform.text1.refresh
thisform.text2.refresh
thisform.text3.refresh
thisform.text4.refresh
thisform.text5.refresh
thisform.text6.refresh
4).在[保存]按扭的click事件加入如下源代码:
=tableupdata(.t.)
5).为[删除]按钮的click事件中加入主要源代码如下:
select教室信息
thisform.Text1.value=教室信息.编号
thisform.Text2.value=教室信息.课程
thisform.Text3.value=教室信息.星期
thisform.Text4.value=教室信息.节次
thisform.Text5.value=教室信息.班级
thisform.Text6.value=教室信息.容量
delete
pack
thisform.text1.refresh
thisform.text2.refresh
thisform.text3.refresh
thisform.text4.refresh
thisform.text5.refresh
thisform.text6.refresh
6).在[退出]按钮的click事件中加入如下代码:
nr=messagebox("你选择了退出,是否继续?
",68,"用户登录")
ifnr=6
thisform.release
clearevents
endif
设计好的“教室使用”表单如图所示:
图教室信息表单
课程设置表单
在“课程设置”表单的[上一条]、[下一条]、[录入]、[删除]、[保存]、[退出]按钮的click事件中输入与“教室使用”表单基本上相同的源代码,这里不再熬述。
设计好的“课程设置”表单如图所示:
图课程设置表单
系统所用到的查询表单
单击“表单控键”中的“按钮”按钮,在“表单设计器”中加入3个按钮,分别将它们的caption设置为“查询”、“打印”、“取消”。
在“查询”按钮的click事件中输入如下源代码:
select教室信息
ifreccount()=0then
messagebox("没有查询到您要找的教室编号!
!
","提示")
else
gotop
thisform.Text1.value=教室信息.编号
thisform.Text2.value=教室信息.课程
thisform.Text3.value=教室信息.星期
thisform.Text4.value=教室信息.节次
thisform.Text5.value=教室信息.班级
thisform.Text6.value=教室信息.容量
select课程设置
gotop
setfilterto
setfilterto课程=课程设置.课程
thisform.Text7.value=课程设置.主讲
thisform.Text8.value=课程设置.人数
endif
在“打印”按钮中输入如下源代码:
setprinton
REPORTFORMe:
\gongqingmin\班级课程表.frxALLNOEJECTNOCONSOLETOPRINTER
setprintoff
在“取消”按钮中输入如下源代码:
nr=messagebox("你选择了取消,是否继续?
",68,"用户登录")
ifnr=6
thisform.release
clearevents
endif
设计的表单如图
图教室使用表单
课程查询表单
该系统还用到了另一个表单如图所示
图课程查询表单
在“统计”表单的“统计”按钮的click事件中输入如下源代码:
select课程设置
countfor(课程=thisform.text1.value)tokctj
thisform.text2.value=kctj
在“取消”按钮的click事件中加入如下源代码:
nr=messagebox("你选择了取消,是否继续?
",68,"用户登录")
ifnr=6
thisform.release
clearevents
endif
在菜单栏的“退出”子菜单的结果中选择“命令”,然后在其选项栏中输入如下源代码:
nr=messagebox("你选择了退出登录,是否继续?
",68,"用户登录")
ifnr=6
thisform.release
clearevents
endif
三.课程设计总结
设计数据库的工作正变得日益困难,如果想用最理想的方式执行则更困难。
资料在组织上有许多不同的方法,许多不同类型的资料必须按照不同方法组织,不同的资料有不同的特性,它们应该影响资料组织,不同的用户有基本不同的需要,所以需要一种数据库管理系统来管理资料。
VisualFoxPro8.0是一个优秀的个人计算机数据库管理系统,是一个符合当今信息社会需求的功能强大的个人计算机数据库管理系统。
VisualFoxPro8.0提供的功能,速度,能力和灵活性,是用户在任何其它的普遍数据库管理系统中所能看到的,它将个人计算机数据库管理系统带入了一个崭新的时代。
在VisualFoxPro8.0中,新的对象和事件模型使得用户创建和修改应用程序比以往任何时候都要快速和便捷。
数据库的制作是一个很复杂的过程,对我们初学者还是有一定的困难,通过这次数据库设计我知道了做一个编程者需要理论联系实际,不仅书本上的基本知识要掌握好,还要有熟练的操作技能。
Vf的学习刚开始没有头绪,后来到图书馆找一些学习资料,慢慢能弄懂了,做系统时出现好多错误,无法运行,找不到路径,找同学帮忙了许多,自己确实学会了书本上没有的东西,也确实明白做好一件困难的事情确实要努力才行。
四.参考文献
1.数据库系统概论萨师煊王珊著高等教育出版社
2:
《VFP8.0实例开发系统》等
3:
谢振华等.VisualFoxPro程序设计教程.北京:
机械工业出版社,2004.6
4:
史济民主编.FoxPro及其应用系统开发,北京:
机械工业出版社,1998
5:
刘瑞新等.VisualFoxPro6.0中文版教程,北京:
电子工业出版社
6.VisualFoxPro程序设计教程清华大学出版社张广庆著
2006-9-10
《数据库原理》课程设计论文
排课管理系统的设计
姓名:
岑明涛
班级:
通信04-1班
学号:
0402020116
指导教师:
申自浩
成绩评定
完成日期:
2006年9月13日