数据库课程设计学生管理系统Word文档下载推荐.docx
《数据库课程设计学生管理系统Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《数据库课程设计学生管理系统Word文档下载推荐.docx(20页珍藏版)》请在冰豆网上搜索。
因而程序需要实现的功能有如下主要六大功能:
一、有关学籍等信息的输入,包括输入学生基本信息、所在班级、所学课程和成绩等
二、学生信息的查询,包括查询学生基本信息、所在班级、已学课程和成绩等
三、学生信息的修改
四、班级管理信息的输入,包括输入班级设置、年级信息等
五、班级管理信息的查询
六、班级管理信息的修改
七、学生课程的设置和修改
1.3核心数据流图
该数据库中包括以下表:
1、学生表:
记录学生的基本信息,是进行学生及其它各类信息处理的基础。
2、成绩表:
记录学生的各科成绩。
3、课程表:
记录各专业各年级开课情况。
1.4核心数据字典
实体属性表:
实体
属性
教师
教师ID,教师姓名,登录密码
课程
课程号,课程名称,教师ID
班级
班级号,班级名称,总人数
学籍
学号,姓名,性别,班级号,籍贯,登录密码
成绩
学号,课程号,成绩
1、学生表结构:
编号
字段名称
字段类型
字段宽度
约束
1
学号
CHAR
10
主键
2
姓名
唯一
3
性别
BIT
0OR1
4
生日
SMALLDATETIME
8
NOTNULL
5
联系电话
15
6
所在系
55
7
总学分
TINYINT
20
>
=0AND<
=200
专业
9
备注
TEXT
2、成绩表结构:
课程号
=100
学分
3、课程表结构:
序号
INT
授课教师
课程名
开课学期
开课学期>
=1AND开课学期<
=6
学时
4、教师信息表
教师ID
教师姓名
登录密码
5、班级信息表
班级号
班级名称
所属学院
班级人数
二、概念设计(周兴美,张传振做)
2.1局部E-R图
2.2全局E-R图
三、逻辑设计(周兴美、张达也做)
3.1开发环境
开发语言:
VisualStudio2012
开发平台:
windows8,4G内存,集成显卡。
开发工具:
VisualStudio2012旗舰版,Access2013
3.2关系模式形成以及规范
3.2.1有以下关系模式:
Student(Sname,Sno,Ssex,Sdate,Stelephone,Sdepart,Smajor,Stotalresual,Snotes)
Grade(Sno,Cno,Ccredits)
Course(Cid,Cno,Tname,Cname,Ctime,Cui,Ccredits)
Teacher(Tid,Tname,Tpassword)
Class(Clno,Clname,Cinstitutes,Clnumber)
3.2.2分解分析:
1)各分量都是不可分割的数据项。
满足第一范式;
2)每一个关系中的非码属性都完全函数依赖于码,符合第二范式;
3)每个关系中的主属性不传递依赖关系中的每个关系键,符合第三范式;
4)关系中所有非主属性对每个码都是完全依赖,且所有主码对于每个不包含它的码也是完全函数依赖,没有任
何属性完全函数依赖非码的任何一组属性
四、创建数据库(周兴美做)
1)创建数据库表,让数据库可以动态增长
CREATEDATABASESTUDENT
ON
(NAME=STUDENT.DATA.
FILENAME=’G:
\STUDENT.MDF’.
SIZE=5MB.MAXSIZE=20MB.FILEROWTH=10%)
LOGON
(NAME=STUDENTLOG
FILENAME=’G:
\STUDENT.LDF’
SIZE=2MB.MAXSIZE=5MB.FILEGROWTH=1MB).
GO
CREATETABLESTUDENT
(学号CHAR(10)NOTNULL,
姓名CHAR(10)NOTNULL,
性别BITNOTNULLDEFAULT1,
生日SMALLDATETIMENOTNULL,
专业CHAR(15)NOTNULL,
所在系CHAR(55)NOTNULL,
联系电话CHAR(15),
总学分TINYINT,
备注TEXT,
CONSTRAINTPK_XSQK_XHPRIMARYKEY(学号),
CONSTRAINTUQ_XSQK_DHUNIQUE(姓名),
CONSTRAINTCK_XSQK_XBCHECK(性别=1OR性别=0),
CONSTRAINTCK_XSQK_DHCHECK(联系电话LIKE'
[0-9][0-9][0-9][0-9][0-9][0-9]'
),
CONSTRAINTCK_XSQK_ZXFCHECK(总学分>
=0AND总学分<
=200))
GO
CREATETABLECOURSE
(序号INT,
课程号CHAR(15)NOTNULLPRIMARYKEY(课程号),
课程名CHAR(20)NOTNULL,
授课教师CHAR(15),
开课学期TINYINTNOTNULLDEFAULT1,
学时TINYINTNOTNULL,
学分TINYINT,
CONSTRAINTCK_KC_XQCHECK(开课学期>
=6))
CREATETABLEGRADE
(学号CHAR(10)NOTNULLREFERENCESXSQK(学号),
课程号CHAR(3)NOTNULL,
成绩TINYINTCHECK(成绩>
=0AND成绩<
=100),
学分TINYINT,
PRIMARYKEY(学号,课程号),
FOREIGNKEY(课程号)REFERENCESKC(课程号))
CREATETABLETEACHER
(序号INT
教师IDCHAR(8)NOTNULL
教师姓名CHAR(8)NOTNULL
登陆密码CHAR(8)NOTNULL
CONSTRAINTPK_TEACHER_XHPRIMARYKEY(教师ID))
CREATETABLECLASS
(序号INT
班级号CHAR(8)NOTNULL
班级名称CHAR(8)NOTNULL
所属学院CHAR(6)NOTNULL
班级人数CHAR(4)NOTNULL
CONSTRAINTPK_CLASS_XHPRIMARYKEY(班级ID))
五、程序以及调试和使用说明(周兴美做)
5.1程序登陆界面
[说明:
进入登陆界面后,系统会自动加载登陆界面,登陆时点击记住密码,在下次登陆时会自动记住登陆名与用户密码
5.2主面板
当用户登陆成功后会自动根据登陆的方式(教师登陆、学生登录)选择不同的登陆主面板(教师界面、学生界面),在教师界面中,教师可以看到自己的相关信息密码,而学生无法查看(包括教师登陆密码)。
其他的和学生界面相同。
5.3具体介绍
5.3.1查看学生信息
在学生系统中点击查看学生信息即可进入查看学生信息界面。
点击滚动图标可以查看学生的具体情况,点击返回可以返回的主界面。
5.3.2学生查看班级信息
在在学生的主面板中点击班级信息即可查看班级信息,点击返回即可返回主界面。
5.3.3教师查看成绩信息
教师在教师主界面中点击成绩信息即可进入查看学生成绩信息,并在此作修改等更新数据库的操作。
点击返回即可返回到主界面。
5.3.4查看信息
无论是教师还是学生都可查看相关的课程信息,在主界面点击查看课程信息即可进入相关的课程查看界面。
点击返回即可返回主界面。
5.3.5教师查看教师的信息
教师在教师主界面点击查看教师信息即可查看教师的相关信息,并查看自己的登陆系统的密码。
点击返回,即可返回到教师的主界面。
六、总结(周兴美做)
两周的日日夜夜的奋战,终于达到了预定的效果,完成了该信息系统的设计和程序编写。
在图书馆借了一些关于VB6.0的书,但是由于电脑上装不了SQL数据库,所以用Access数据库做,但是电脑上的Access最低只能转换到Access2000的版本,而VB6.0只能连接Access97版,所以做此课程设计只能使用VisualStudio2012,Access2013所以有的功能无法实现。
用VS语言编写程序,制作登陆界面很方便。
虽然其编写的应用程序在不同的机器上需要解释器,需要随带很多OCX控件和其他控件。
但是,在编写信息管理系统方面还是很有优势的。
(1)可视化编程,丰富的控件,随用随拖,对控件对象编程,很方便。
(2)可以方便的利用API函数实现窗体的各种效果。
有丰富的API接口。
(3)语言简单,实现功能很方便。
在对数据库操作方面,引用了DAO3.6对象,使用DAO编程连接和操作。
所以很自然选择了VS语言。
在数据库方面,考虑编程方便,采用从SQL中导出成access文件来进行操作。
选定学生管理系统课题后,开始收集相关资料和设计软件架构。
到学校网站、教务处调查和到网上收集信息,以及参考了其他信息管理系统,心里就有了轮廓。
设计好软件的几大模块,采用自顶向下的经典设计方法,确定实现的功能,开始设计数据库。
运用相关的数据库知识,设计好数据表,确定字段、相关约束。
并通过模式分解,确定其是无损的连接。
有了数据库作为整个设计的底层,就好像盖房子有了骨架,而软件就像是砖瓦,只是将骨架填充完善,给客户一个好的外观。
因而数据库的设计尤为重要,但是在设计之初,往往会有很多情况不能考虑周全,再加之一个人编写,所以进度一度很慢,后来通过列出所有可能的情况,以及同同学老师等交流,总结并重新设计了数据库,终于是能有一个比较好的效果。
通过将所有和学生相关的信息都加到学生信息里,避免了对多表的操作,避免了有可能会出现的参照完整性不一致的问题。
继而是软件的设计,由于对VB还是算比较熟悉,因而有了数据库的支撑,就得心应手了。
考虑到用户使用的方便性,软件主界面提供了很多入口,以及直观的图形显示,方便用户操作,因而也给客户带来方便,免去了客户的很多等待时间,学生管理系统的效率。
同时提供了两种登陆方式,既方便了教师对学生信息的修改,又方便了学生查看相关信息。
整个程序完成了,又花了大量的时间对其进行调试。
通过黑盒白盒测试,程序能正常的显示结果和准确报错,达到了单机运行的效果。
接着在不同机器环境上测试,有些控件因为没有带走,所以报错,后来带上控件后都能正常运行,在windowXP和win7上都能正常运行。
由于学校学生比较多,学生的信息量大,因而信息系统不可能只在单机上运行,所以才用C/S,或B/S结构比较合适。
因时间关系所以没能完成,只预留了接口,供以后开发扩展用。
当然这次课程设计因为是数据库的课程设计,重点在数据库的设计,所以对于软件体系结构风格,没有考虑,只求能达到目的!
在本次课程设计中,要感谢各位老师的指导,也要感谢提供意见和建议的同学,才得以大致完成该设计。
在剩余的时间还要将答辩内容准备充分。
尽量使本次课程设计任务能够完美达成。
七、部分代码(周兴美做)
7.1登陆界面
PublicClassForm1
PrivateSubTextBox1_TextChanged(senderAsObject,eAsEventArgs)HandlesTextBox1.TextChanged
EndSub
PrivateSubButton1_Click(senderAsObject,eAsEventArgs)HandlesButton1.Click
IfTextBox1.Text="
admin"
Then
IfTextBox2.Text=12345Then
Me.Hide()
Form2.Show()
EndIf
Else
MsgBox("
请输入用户名"
,"
登录失败"
)
PrivateSubButton3_Click(senderAsObject,eAsEventArgs)HandlesButton3.Click
admins"
IfTextBox2.Text=123456Then
Form8.Show()
无效密码,请重试!
"
TextBox2.Text="
PrivateSubButton2_Click(senderAsObject,eAsEventArgs)HandlesButton2.Click
End
PrivateSubTextBox2_TextChanged(senderAsObject,eAsEventArgs)HandlesTextBox2.TextChanged
PrivateSubRadioButton1_CheckedChanged(senderAsObject,eAsEventArgs)HandlesRadioButton1.CheckedChanged
TextBox1.Text="
TextBox2.Text=123456
EndClass
7.2学生系统
PublicClassForm2
PrivateSubForm2_Load(senderAsObject,eAsEventArgs)HandlesMyBase.Load
'
TODO:
这行代码将数据加载到表“STUDENTDataSet._CLASS”中。
您可以根据需要移动或删除它。
Me.CLASSTableAdapter.Fill(Me.STUDENTDataSet._CLASS)
PrivateSubDataGridView2_CellContentClick(senderAsObject,eAsDataGridViewCellEventArgs)
Form6.Show()
Form3.Show()
PrivateSubButton4_Click(senderAsObject,eAsEventArgs)
PrivateSubButton5_Click(senderAsObject,eAsEventArgs)HandlesButton5.Click
Form5.Show()
PrivateSubButton6_Click(senderAsObject,eAsEventArgs)HandlesButton6.Click
Form4.Show()
PrivateSubButton4_Click_1(senderAsObject,eAsEventArgs)HandlesButton4.Click
7.3教师系统
PublicClassForm8
PrivateSubButton4_Click(senderAsObject,eAsEventArgs)HandlesButton4.Click
Form7.Show()
7.4查看某信息并返回系统界面
PublicClassForm3
PrivateSubForm3_Load(senderAsObject,eAsEventArgs)HandlesMyBase.Load
参考文献
[1]《VB数据库系统开发技术》郭琦编著,人民邮电出版社
[2]《VB数据库开发技术与工程实践》求是科技编著,人民邮电出版社
编辑工具:
Access2013
教师签名:
日期: