数据库课设报告模板.docx
- 文档编号:26856674
- 上传时间:2023-06-23
- 格式:DOCX
- 页数:23
- 大小:252.87KB
数据库课设报告模板.docx
《数据库课设报告模板.docx》由会员分享,可在线阅读,更多相关《数据库课设报告模板.docx(23页珍藏版)》请在冰豆网上搜索。
数据库课设报告模板
辽宁工业大学
数据库应用技术课程设计说明书
题目:
学生信息管理系统
学院(系):
软件学院
专业班级:
软件工程班
学号:
060403029
学生姓名:
指导教师:
佟玉军
教师职称:
副教授
起止时间:
2011.12.19-2012.12.31
辽宁工业大学课程设计(论文)任务书
院(系):
软件学院教研室:
软件工程
学号
学生姓名
专业班级
设计题目
学生信息管理系统
设计技术
参数
1.题目要达到的目标:
完成系统的登陆、数据的插入删除修改统计等基本操作。
2.数据库:
SQLSERVER2000。
3.所使用的语言、工具:
VB6.0+SQLSERVER2000+WINDOWSXP。
4.所采用的技术、系统结构:
ADO数据库联接技术,系统结构为C/S结构。
设
计
要
求
1.教师布置实习任务和要求时,不得缺席,并做好记录。
2.上机前预先把所有的源程序编写好。
3.上机时不得迟到,不得缺席,爱护设备,认真调试程序。
4.仔细查阅相关资料,认真完成思考题。
5.按要求书写设计任务书,并按要求按版打印,不得雷同。
工作量
二周
工
作
计
划
周一听取教师布置设计的任务及要求。
周二学生查阅相关资料,进行数据库设计。
周三至周五:
详细设计与界面设计。
周一至周四程序设计与上机,调试源程序。
周五书写课程设计任务书。
参考资料
《数据库应用技术》
《数据库应用技术实验指导书》自编
《数据库应用技术课程设计指导书》等自编
指导教师评语
该生在数据库系统概论课程设计期间:
上机时不迟到,不缺席,爱护设备,认真调试程序。
仔细查阅相关资料,认真完成作业。
听从指导教师安排。
在设计与实现过程中,能使设计的系统达到预期设计要求,功能合理,流程清楚,语句条理通顺。
教师:
学生:
说明:
此表一式四份,学生、指导教师、教研室、系部各一份。
可加附页。
2011年12月31
目录
第一章概述4
第二章问题定义4
第三章需求分析4
第四章数据库设计6
第五章界面设计7
第六章代码9
第一章概述
本系统本着一切为用户着想的设计指导思想,力求做到界面美观大方,操作简捷明了,而且具备一个实用的操作系统的良好容错性,在用户出现误操作时能尽量及时地给出警告,以便用户能够及时进行改正。
由于不同用户所使用的计算机资源总是会受到不同条件的限制,因此,我们就要充分利用的功能,在设计出自己的功能强大的软件的同时,尽可能地减少对系统资源的占用,并且还要力求做到通过使用本学生管理信息系统,尽量使工作系统化、自动化和规范化,从而达到提高效率的目的。
第二章问题定义
工作人员:
系统的录入人员,主要指管理各种档案的工作人员,需要通过密码才能进入。
他们拥有对系统数据的录入、修改、查询、删除等操作权限。
但不可以更改系统密码。
查询人员:
权限最低的登入人员,他们拥有对相关数据的查询权限,但不能对数据进行修改和删除。
系统管理人员:
指工资管理系统的管理人员,他们拥有所有权限,包括对系统数据的录入、修改、查询、删除等操作权限。
可以对系统密码进行更改,可以管理用户信息、权限。
第三章需求分析
一、数据库需求分析
用户需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输入和输出。
收集基本数据、数据结构、数据处理的流程,组成一份详尽的数据字典,为以后的具体设计打下基础。
在仔细分析调查有关学生信息需要的基础上,将得到数据流程图。
针对一般学生信息管理系统的需求,通过对学生学习过程的内容和数据流程分析,设计如下面所示的数据项和数据结构:
*学生基本信息:
包括的数据项有:
学号、姓名、性别、出生日期、班号、入校日期。
*班级信息:
包括的数据项有:
班号、所在年级、班主任姓名、所在教室等。
二、数据流图
三、数据字典(DD):
学生基本信息表=学号+姓名+性别+出生日期+班号+入校时间
系统用户表=名称+密+描述
班级信息表格=班号+年级+班主任+教室
四、数据库概念的结构设计
得到上面的数据想和数据结构以后,就可以设计出能满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。
这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。
我所设计的实体有:
学生实体、班级实体
五、数据库的逻辑结构设计:
将概念转化为SQLSever2000数据库系统。
六、物理实现
程序流程图:
七、功能结构图:
第四章数据库设计
一、概念设计:
系统ER图
二、逻辑设计:
下面列出几个主要的数据库表设计:
表4.1学生基本信息表
序号
中文名
字段
类型
备注
Student_ID
学号
4
int
主键
Student_Name
姓名
10
char
Student_Gender
性别
2
char
Born_Date
出生日期
8
datetime
Class_No
班号
4
int
Ru_Date
入学日期
8
datetime
班级信息表格
序号
中文名
字段名
类型
备注
Class_No
班号
4
Int
主键
grade
年级
10
Char
director
班主任
10
Char
Classroom_No
教室
10
Char
系统用户
序号
中文名
字段名
类型
备注
user_ID
名称
10
Char
主键
User_PWD
密码
10
Char
三、物理设计
在数据库中创建索引时,查询所使用的索引信息存储在索引页中。
连续索引页由从一个页到下一个页的指针链接在一起。
当对数据的更改影响到索引时,索引中的信息可能会在数据库中分散开来。
重建索引可以重新组织索引数据(对于聚集索引还包括表数据)的存储,清除碎片。
这可通过减少获得请求数据所需的页读取数来提高磁盘性能。
在SQLServer2000中,如果要用一个步骤重新创建索引,而不想删除旧索引并重新创建同一索引,则使用CREATEINDEX语句的DROP_EXISTING子句可以提高效率。
这一优点既适用于聚集索引也适用于非聚集索引。
以删除旧索引然后重新创建同一索引的方式重建聚集索引,是一种昂贵的方法,因为所有二级索引都使用聚集键指向数据行。
如果只是删除聚集索引然后重新创建,则会使所有非聚集索引都被删除和重新创建两次。
一旦删除聚集索引并再次重建该索引,就会发生这种情形。
通过在一个步骤中重新创建索引,可以避免这一昂贵的做法。
在一个步骤中重新创建索引时,会告诉SQLServer要重新组织现有索引,避免了删除和重新创建非聚集索引这些不必要的工作。
该方法的另一个重要优点是可以使用现有索引中的数据排序次序,从而避免了对数据重新排序。
这对于聚集索引和非聚集索引都十分有用,可以显著减少重建索引的成本。
另外,通过使用DBCCDBREINDEX语句,SQLServer还允许对一个表重建一个或多个索引,而不必单独重建每个索引。
DBCCDBREINDEX也可用于重建执行PRIMARYKEY或UNIQUE约束的索引,而不必删除并创建这些约束(因为对于为执行PRIMARYKEY或UNIQUE约束而创建的索引,必须先删除该约束,然后才能删除该索引)
截图
第五章界面设计
一、登陆窗口如下所示:
系统登入后,首先出现用户登录窗体,用户首先等如用户名然后输入密码。
如果用户3次输入密码不正确,将退出程序。
图5.1登陆界面
二、主界面
单击主界面上的各个按钮,可以进入相应的界面中。
三、密码管理
用户可以修改自己的密码,选择菜单“系统\修改密码”,如图窗体
进入系统后,选择菜单“系统\添加用户”就可以添加用户如图窗体。
功能介绍,相关控件;
四、学籍管理
选择“学籍管理\查询学籍信息”菜单,将出现如图所示的窗口,在这里可以按照各种方式以及它们的组合进行查询。
选择“学籍管理\添加学籍信息”菜单,如图窗体。
选择“学籍管理\该学籍信息”菜单,将出现如图窗体。
这个窗体再添加学籍信息窗体的基础上增加两排按钮,设置控件属性。
第六章代码与注释
一、登录代码
OptionExplicit
PublicOKAsBoolean
DimmiCountAsInteger
PrivateSubForm_Load()
OK=False
miCount=0
EndSub
PrivateSubcmdOK_Click()
DimtxtsqlAsString
DimmrcAsADODB.Recordset
DimMsgTextAsString
UserName=""
IfTrim(txtUserName.Text="")Then
MsgBox"没有这个用户,请重新输入用户名!
",vbOKOnly+vbExclamation,"警告"
txtUserName.SetFocus
Else
txtsql="select*fromuser_Infowhereuser_ID='''&txtUserName.Text&'''"
Setmrc=ExecuteSQL(txtsql,MsgText)
Ifmrc.EOF=TrueThen
MsgBox"没有这个用户,请重新输入用户名!
",vbOKOnly+vbExclamation,"警告"
txtUserName.SetFocus
Else
IfTrim(mrc.Fields
(1))=Trim(txtPassword.Text)Then
OK=True
mrc.Close
Me.Hide
UserName=Trim(txtUserName.Text)
Else
MsgBox"输入密码不正确,请重新输入!
",vbOKOnly+vbExclamation,"警告"
txtPassword.SetFocus
txtPassword.Text=""
EndIf
EndIf
EndIf
miCount=miCount+1
IfmiCount=3Then
Me.Hide
EndIf
ExitSub
EndSub
二、主界面代码
PrivateSub查询学籍信息_Click()
frmInquiresinfo.Show
EndSub
PrivateSub添加学籍信息_Click()
frmsinfo.Show
EndSub
PrivateSub添加用户_Click()
frmAdduser.Show
EndSub
PrivateSub修改密码_Click()
frmModifyuserinfo.Show
EndSub
PrivateSub修改学籍信息_Click()
frmModifysinfo.Show
EndSub
三、个人信息查询代码
修改密码
PrivateSubcmdOK_Click(IndexAsInteger)
Dimtxtsql,MsgTextAsString
DimmrcAsADODB.Recordset
IfTrim(txtPassword1
(1).Text)<>Trim(txtPassword2
(2).Text)Then
MsgBox"输入密码不正确!
",vbOKOnly+vbExclamation,"警告"
txtPassword1
(1).SetFocus
txtPassword2
(1).Text="a"
Else
txtsql="select*fromuser_Infowhereuser_ID='''&User_PWD&'''"
Setmrc=ExecuteSQL(txtsql,MsgText)
mrc.Fields
(1)=txtPassword1
(1).Text
mrc.Update
mrc.Close
MsgBox"密码修改成功!
",vbOKOnly+vbExclamation,"修改密码"
Me.Hide
EndIf
EndSub
添加学籍信息
IfNotIsDate(txtRudate.Text)Then
MsgBox"入学时间应输入日期格式(yyyy-mm-dd)!
",vbOKOnly+vbExclamation,"警告"
txtRudate.SetFocus
Else
txtRudate=Format(comboBorndate,"yyyy-mm-dd")
txtsql="select*fromstudent_Info"
Setmrc=ExecuteSQL(txtsql,MsgText)
mrc.AddNew
mrc.Fields(0)=Trim(txtSID.Text)
mrc.Fields
(1)=Trim(txtName.Text)
mrc.Fields
(2)=Trim(combosex.Text)
mrc.Fields(3)=Trim(txtborndate.Text)
mrc.Fields(4)=Trim(comboClassNo.Text)
mrc.Fields(5)=Trim(txtRudate.Text)
mrc.Update
MsgBox"添加学籍信息成功!
",vbOKOnly+vbExclamation,"添加学籍信"
mrc.Close
Me.Hide
EndIf
EndIf
EndIf
EndSub
PrivateSubcmdCancel1_Click()
UnloadMe
EndSub
学籍查询
IfTrim(txtName.Text)=""Then
sMeg="姓名不能为空"
MsgBoxsMeg,vbOKCancel+vbExclamation,"警告"
txtName.SetFocus
ExitSub
Else
dd
(1)=True
Ifdd(0)Then
txtsql=txtsql&"andstudent_Name='''&txtName.Text&'''"
Else
txtsql=txtsql&"andstudent_Name='''&txtName.Text&'''"
EndIf
EndIf
EndIf
IfCheck
(2)Then
IfTrime(txtClassno.Text)=""Then
sMeg="班号不能为空"
学籍修改
MsgBox"什么都没有修改,有什么好消息的!
",vbOKOnly+vbExclamation,"警告"
EndIf
EndSub
PrivateSubdeleteCommande_Click()
mrc.Bookmark=myBookmark
str2$=MsgBox("是否删除当前记录?
",vbOKCancel,"删除当前记录")
Ifstr2$=vbOKThen
mrc.MoveNext
Ifmrc.EOFThen
mrc.MoveFist
mrc.Bookmark=myBookmark
mrc.MoveLast
mrc.Delete
mrc.Bookmark=myBookmark
CallviewData
Else
mrc.Bookmark=myBookmark
mrc.MovePrevious
mrc.Delete
mrc.Bookmark=myBookmark
CallviewData
EndIf
Else
mrc.Bookmark=myBookmark
CallviewData
EndSub
设计总结
一个完整的学生信息管理系统就创建完毕了。
在本例中我们详细地讲述了该学生信息管理系统的系统设计部分,包括功能模块设计、数据库结构设计等。
系统设计为整个程序构建了骨架,各个功能模块实现各个细节部分。
参考文献
[1]同于军,张三.数据库原理[M].JQIN.2010,10.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 报告 模板