学生信息管理数据库设计报告.docx
- 文档编号:15699317
- 上传时间:2023-07-06
- 格式:DOCX
- 页数:66
- 大小:631.48KB
学生信息管理数据库设计报告.docx
《学生信息管理数据库设计报告.docx》由会员分享,可在线阅读,更多相关《学生信息管理数据库设计报告.docx(66页珍藏版)》请在冰点文库上搜索。
学生信息管理数据库设计报告
《数据库》期末课程设计报告
学生信息管理系统
1课程设计题目:
学生信息管理系统
随着学校规模的不断扩大
,学生数量急剧增加
,有关学生的各种信息也成倍增加
。
面对庞
大的信息量,就需要有学生信息管理系统来提高学生管理工作的效率
。
通过这样的系统,
可以做到信息的规范管理
、科学统计和快速的查询,从而减少管理方面的工作量
。
现在的
时代是网络普及是时代
,学生有条件通过网络方便快捷的查询自己的个人信息
。
所以,学
生信息管理系统既能方便学校管理部门的管理
,又能方便学生及时查询个人信息
。
2需求分析
需求分析阶段的目标和任务
2.1.1处理对象
学生个人信息:
学号,姓名,性别,年龄,院系
......
学生课程信息:
学号,选修课程号,课程成绩
课程信息:
课程号,课程名称,课程信息
教师信息:
教师名字,教师编号,教师年龄,教师工资,教师所属院系
任课教师信息:
教师编号,课程号
院系信息:
院系编号,院系名称
2.1.2处理功能及要求
开发学生信息管理系统,主要为减轻教师人员的负担,使学生信息的存入记录与
取出记录相对方便,便于学生个人信息的增加与减少,降低出错率,使管理更加合理、
科学,也为老师节省开支。
在系统中的新生信息的录入、教师信息的查询,由于在学生
信息管理的过程中会涉及到大量的数据操作,如数据的添加、删除、修改和保存等。
这
主要包括:
1.能够对学生个人信息进行一定的操作处理:
1)学生个人信息的增加、删除以及修改。
2)学生个人信息的多关键字检索查询。
2.能够对学生个人信息,教师信息的查询相关资料,这其中包括:
1)学生个人信息的增加、删除及修改。
2)教师个人信息的增加,删除及修改
3.对查询、统计的结果能够列表显示。
2.1.3安全性和完整性要求
1)安全性要求
.专业.专注.
系统安全性要求体现在数据库安全性、信息安全性和系统平台的安全性等方面。
安全
性先通过视图机制,教务员可以设置密码来限制别人访问系统的视图,这样可提供系统数
据一定程度上的安全性,再通过分配权限、设置权限级别来区别对待不同操作者对数据库
的操作来提高数据库的安全性;系统平台的安全性体现在操作系统的安全性、计算机系统
的安全性和网络体系的安全性等方面。
2)完整性要求
系统完整性要求系统中数据的正确性以及相容性。
可通过建立主、外键,使用check
约束,或者通过使用触发器和级联更新。
2.2需求分析阶段成果
2.2.1体会与收获
系统需求分析主要是通过对网上一些资源以及《SQLSEERVER2000案例教程》这本书
的相关资料的查看,以及联系一些现实学校的班主任记录学生信息的基本情况,总结学生
信息管理系统至少应该具备对重要相关信息的哪些管理功能,以及在管理中的一些问题。
因为是第一次做这样的需求调查,有些东西到现在可能还不是做的很好,但是这些我以后
都会慢慢把他完善的。
希望本系统能在使用中不断地发现漏洞,改善漏洞,不断完善本系
统。
2.2.2学生信息管理系统数据流程图
顶层数据流图:
......
教
师
学生信息
信息
查询信息
学生信
息管理
系统
录入
查询
学生个
人信息
第2层数据流图:
(学生信息录入,教师信息录入,学生课程信息录入,学生成绩录入,学生信息查询和修改等)
查询
学生个人信息
信息
表
课程信息表
查
学生选课表
学生
询
教师信息表
任课教师表
教师
学生成绩表
查询
结果
院系信息表
教
修务
员
改
2.2.3学生信息管理系统数据字典
(a)数据项:
系统涉及的数据项有15项
表1.1数据项列表
数据项编号数据项名数据项含义数据类型长度别名
DI-1sno学生编号Char15
.专业.专注.
数据项编号
数据项名
数据项含义
数据类型
长度
别名
DI-2
sname
学生姓名
char
15
DI-3
sage
学生年龄
int
4
DI-4
ssex
学生性别
char
15
DI-5
sdno
学生所在院系编号
char
15
DI-6
tno
教师编号
Char
15
DI-7
cno
课程号
char
15
DI-8
tname
教师名称
char
15
DI-9
tage
教师年龄
int
4
DI-10
tsalary
教师工资
int
4
DI-11
dno
院系编号
char
15
DI-12
dname
院系名称
char
15
DI-13
cname
课程名称
char
100
DI-14
credit
课程学分
int
4
DI-15
Grade
课程成绩
int
4
(b)数据结构:
表1.2数据结构列表
数据结数据结构名组成
DS-1STUDENTSno,Sname,Ssex,Sage,Sdno
DS-2SCDno,Cname,Grade
DS-3COURSEDno,Cname,Credit
DS-4DEPARTDno,Dname
DS-5TEACHERTno,Tname,Tsage,Tsalary,Dno
DS-6TCTno,Cno
......
3概念设计阶段
3.1任务与目标
任务:
开发学生信息管理系统,主要为减轻教师工作的负担,使老师对学生信
息的记录与查询相对方便,便于学生信息的增加与减少,降低出错率,
使管理更加合理、科学,也为老师节省开支。
在系统中实现了学生信息
的录入、修改、查询等操作,所以在学生信息管理的过程中会涉及到大
量的数据操作,如数据的添加、删除、修改等
目标:
开发本系统的目的在于代替手工管理、修改、查询等工作,具体要求包括:
数据录入:
录入学生个人信息、学生成绩;
数据修改:
修改学生个人信息,修改教师个人信息;
数据查询:
查询学生个人信息,查询学生选课信息,查询任课教师信息等。
3.2阶段结果
(1)根据不同的对象,分别画出各分E-R图:
(a)院系的E-R图:
.专业.专注.
院系
院系编号院系名称
(c)课程的E-R图:
课程
课程名称
课程号
课程学分
(d)学生信息的E-R图:
......
性别
学号
学生
姓名
年龄所在
院系
(e)教师实体E-R图:
教师
院系
姓名
年龄
编号
工资
(2)合并各分E-R图,消除属性冲突、命名冲突、结构冲突等三类冲突,得到初步E-R
图,再消除不必要冗余,得到的学生信息管理E-R图如下所示:
.专业.专注.
......
课程号课程名学分
性别编号
姓名工资
课程
n教课1
.专业.专注.
mn教师
成绩
选课
工作
n
m
1
姓名
学生
院系
学习
学号
性别
年龄
院系名
院系号
称
数据库中关系图
4.逻辑设计阶段
4.1逻辑设计的任务和目标
......
概念设计阶段是独立于任何一种数据模型的。
系统逻辑设计的任务就是将概念设计阶
段设计好的基本E-R图转换为选用DBMS产品所支持的数据模型相符合的逻辑结构。
具体
内容包括数据组织(将E-R图转换成关系模型、模型优化、数据库模式定义、用户子模式
设计)以及数据处理(画出系统功能模块图)两大任务。
4.2关系模型设计
1)DEPART(院系信息表)
NO.
字段名
类型
说明
1
Dno
Char
主键
2
Dname
Char
Null
2)COURSE(课程表)
NO.
字段名
类型
说明
1
Cno
Char
主键
2
Cname
Char
Null
3
Credit
Int
Null
3)STUDENT(学生个人信息表)
NO.
字段名
类型
说明
1
Sno
Char
主键
2
Sname
Char
Null
3
Ssex
Char
Null
.专业.专注.
4SageIntNull
5SdnoCharNull
4)SC(选课表)
NO.
字段名
类型
约束
1
Sno
char
主键
2
Cno
char
Null
3
Grade
Int
Null
5)TEACHER(教师个人信息表)
NO.
字段名
类型
约束
1
Tno
char
主键
2
Tname
char
Nnull
3
Tage
int
Null
4
Tsalary
int
Null
5
Dno
char
Null
6)TC(任课教师表)
NO.
字段名
类型
约束
1
Tno
Char
主键
2
Cno
Char
Null
4.3用户子模式举例
学生个人信息查询视图
......
列名
数据类型
可否为空
说明
Sno
Char
notNull
主键
Sname
Char
Nulll
Cno
Char
Null
Cname
Char
Null
Tno
Char
Null
课程信息查询视图
列名
数据类型
可否为空
说明
Cno
Char
notNull
主键
Sname
Char
Nulll
Grade
Int
Null
教师个人信息查询视图
列名
数据类型
可否为空
说明
Tname
Char
notNull
主键
Cname
Char
Nulll
Sname
Char
Null
.专业.专注.
4.4数据处理
系统功能模块图:
学生信息管理系统
课程信学生信息管理教师信息管理院系信
课
课
新
学
学
教
教
院
院
程
程
生
生
生
师
师
系
系
信
信
个
信
信
信
信
信
信
息
息
人
息
息
息
息
息
息
查
添
信
查
修
查
输
查
输
询
加
息
询
改
询
入
询
入
输
5.物理设计阶段
5.1物理设计阶段的目标与任务
数据库的物理设计就是为逻辑数据模型选取一个最合适应用要求的物理结构的过程,
在这个阶段中要完成两大任务:
(1)确定数据库的物理结构,在关系数据库中主要是存取方法和存储结构;
(2)对物理结构进行评价,评价的重点是时间和空间效率。
......
5.2数据存储方面
为数据库中各基本表建立的索引如下:
1.由于学生个人信息表中的属性姓名经常在查询条件中出现,且它们的值一般都是
唯一,在两个属性上建立索引;
2.由于学生个人信息表中的主码学号经常在查询条件和连接条件中出现,且它们的
值是唯一的,在两个属性上建立唯一性索引;
5.3系统功能模块
依据需求分析阶段看,学生信息管理系统主要分为学生个人信息管理,课程信息
管理,教师信息管理等主要方面。
学生信息管理系统
学生
课程
院系
教师
个人
信息
信息
信息
信息
管理
管理
管理
管理
6数据库部分
.专业.专注.
1)基本表
STUDNET学生信息表
TEACHER教师个人信息表
......
COURSE课程表
.专业.专注.
SC学生选课表
TC任课教师表
......
DEPART院系表
.专业.专注.
2)视图
CREATEVIEWdbo.VIEW1
WITHSCHEMABINDING
AS
SELECTdbo.SC.Sno,dbo.COURSE.Cno,dbo.COURSE.Credit
FROMdbo.COURSEINNERJOIN
dbo.SCONdbo.COURSE.Cno=dbo.SC.Cno
CREATEVIEWdbo.VIEW2
WITHSCHEMABINDING
AS
SELECTdbo.TEACHER.Tname,dbo.TEACHER.Dno,dbo.DEPART.Dname
FROMdbo.DEPARTINNERJOIN
dbo.TEACHERONdbo.DEPART.Dno=dbo.TEACHER.Dno
CREATEVIEWdbo.VIEW3
AS
......
SELECTdbo.STUDENT.Sname,dbo.SC.Cno,dbo.SC.Grade
FROMdbo.SCINNERJOIN
dbo.STUDENTONdbo.SC.Sno=dbo.STUDENT.Sno
CREATEVIEWdbo.VIEW4
AS
SELECTdbo.STUDENT.Sname,dbo.SC.Cno,dbo.COURSE.Cname,dbo.TC.Tno
FROMdbo.TCINNERJOIN
dbo.COURSEONdbo.TC.Cno=dbo.COURSE.CnoINNERJOIN
dbo.SCONdbo.COURSE.Cno=dbo.SC.CnoINNERJOIN
dbo.STUDENTONdbo.SC.Sno=dbo.STUDENT.Sno
CREATEVIEWdbo.VIEW5
WITHSCHEMABINDING
AS
SELECTdbo.STUDENT.Sname,dbo.SC.Cno,dbo.COURSE.Cname,
dbo.COURSE.Credit,
dbo.SC.Grade
.专业.专注.
FROMdbo.COURSEINNERJOIN
dbo.SCONdbo.COURSE.Cno=dbo.SC.CnoINNERJOIN
dbo.STUDENTONdbo.SC.Sno=dbo.STUDENT.Sno
CREATEVIEWdbo.VIEW6
WITHSCHEMABINDING
AS
SELECTdbo.STUDENT.Sno,dbo.STUDENT.Sname,dbo.DEPART.Dname,
dbo.COURSE.Cname
FROMdbo.STUDENTINNERJOIN
dbo.DEPARTONdbo.STUDENT.Sdno=dbo.DEPART.DnoINNERJOIN
dbo.SCONdbo.STUDENT.Sno=dbo.SC.SnoINNERJOIN
dbo.COURSEONdbo.SC.Cno=dbo.COURSE.Cno
CREATEVIEWdbo.VIEW7
WITHSCHEMABINDING
AS
SELECTdbo.TEACHER.Tname,dbo.COURSE.Cname
FROMdbo.TEACHERINNERJOIN
......
dbo.TCONdbo.TEACHER.Tno=dbo.TC.TnoINNERJOIN
dbo.COURSEONdbo.TC.Cno=dbo.COURSE.Cno
CREATEVIEWdbo.VIEW8
WITHSCHEMABINDING
AS
SELECTdbo.TEACHER.Tname,dbo.COURSE.Cname,dbo.STUDENT.Sname
FROMdbo.TEACHERINNERJOIN
dbo.TCONdbo.TEACHER.Tno=dbo.TC.TnoINNERJOIN
dbo.COURSEONdbo.TC.Cno=dbo.COURSE.CnoINNERJOIN
dbo.SCONdbo.COURSE.Cno=dbo.SC.CnoINNERJOIN
dbo.STUDENTONdbo.SC.Sno=dbo.STUDENT.Sno
3)存储过程
CREATEPROCEDURE[user1].[PROCEDURENAME]AS
selectdistincts.snamefromstudentsjoinscons.sno=sc.snowheregrade
<80
.专业.专注.
CREATEPROCEDURE[user1].[PROCEDURENAME]AS
selectsname,sagefromstudentwheresdnoin(10001,10005,10007)
CREATEPROCEDURE[user1].[PROCEDURENAME]AS
selectSname,SagefromSTUDENTWHERESage<22
CREATEPROCEDURE[user2].[sum]AS
selectcount(distinctsno)fromsc
CREATEPROCEDURE[user3].[tac]AS
selectsname,tname,t.dnofromstudentsjoinscons.sno=sc.snojointcon
o=o
jointeachertont.tno=tc.tno
CREATEPROCEDURE[user2].[teacher]AS
selecttname,tsalaryfromteacherorderbytsalary
CREATEPROCEDURE[user3].[teacherc]AS
selecttname,cnamefromteachertjointcont.tno=tc.tnojoincoursecon
o=o
CREATEPROCEDURE[user4].[yuanxi]AS
......
select*fromstudentsjoindepartdons.sdno=d.dno
CREATEPROCEDURE[user4].[yuanxi2]AS
selectdno,sname,sagefromstudentsjoindepartdons.sdno=d.dno
CREATEPROCEDURE[user1].[zhang]AS
select*fromstudentwheresnamelike'张__'
4)触发器
createtriggertr_studonstudent
forupdate
as
declare@msgvarchar(100)
select@msg=str(@@rowcount)+'studentshasbeenupdated'
print@msg
return
createtriggertruteacheronteacher
forupdateas
ifupdate(tno)
.专业.专注.
begin
updatetc
settno=i.tnofromtc,insertedi,delecteddwheretc.tno=d.tno
end
createtrigger[delete]on[dbo].[tc]
fordelete
as
deletesc
fromsc,deletedd
whereo=o
5)用户
6)角色
7)索引
ALTERTABLE[dbo].[COURSE]WITHNOCHECKADD
......
CONSTRAINT[PK__COURSE__CB]PRIMARYKEYCLUSTERED
(
[Cno]
)ON[PRIMARY]
GO
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 信息管理 数据库 设计 报告