数据库大作业.docx
- 文档编号:28905173
- 上传时间:2023-07-20
- 格式:DOCX
- 页数:19
- 大小:263.90KB
数据库大作业.docx
《数据库大作业.docx》由会员分享,可在线阅读,更多相关《数据库大作业.docx(19页珍藏版)》请在冰豆网上搜索。
数据库大作业
学生信息管理系统
李航艳
201096064028
目的
开发学生信息管理系统的目的:
最主要的特点就是节省人力资源,使用方便。
所以,开发一套学校学生管理系统来代替传统的人工管理方式是势必所然的。
其次,学生信息管理系统极大提高了工作效率,大大减少了以往的操作方式,为使用者带来了很多方便。
学生信息管理系统,查找方便,管理方便,而且一些参数还可以手动修改。
通过分析学生信息管理工作的某些不足,设计了一个功能全面的学生信息管理系统,该系统主要功能:
班级管理,学生管理,课程管理,成绩管理,班级管理,院系管理,奖学金管理。
一、需求分析
1、信息需求:
◇学生:
学号、姓名、性别、班级、专业、出生日期、联系方式。
学生通过学号标识。
◇课程:
课程号、课程名、任课老师、课时、考试类型、学期、年级、班级号。
课程通过课程号标识。
◇班级:
年级、专业、人数、班长、班级号。
班级通过班级号标识。
◇成绩:
年级、学期、课程名、学号、姓名、成绩、班级。
成绩通过课程名、学号标识。
◇院系:
专业、系名。
院系通过系名标识。
◇奖学金:
学号、姓名、性别、班级、奖项、金额。
获奖通过学号标识。
学生信息管理系统中各个对象之间的联系如下:
◇每个学生都属于一个班级,而一个班级可以有多个学生。
◇每个班级属于一个专业,一个专业可以有多个班级。
◇一个专业属于一个系,一个系可以有多个教师。
◇每个教师可以教授多门课程,同一门课程可以被不同的老师教授。
◇每一个学生可以选修若干门课程,每一门课程可以有多个学生选修。
◇一个学生可以获几门奖项,一门奖项也可以有多个学生获得。
2、处理需求:
1、能够对学生个人信息进行一定的操作处理。
学生个人信息的增加、删除以及修改。
学生个人信息的多关键字检索查询。
2、能够对学生奖学金进行一定的操作处理。
学生个人信息的增加、删除以及修改。
学生奖励记录信息的增加。
3、能够对课程信息进行一定的操作处理。
课程信息的多关键字检索查询。
学生选课信息的查询、删除以及修改。
4、能够对班级进行一定的操作处理。
班级信息的多关键字检索查询。
班级信息的查询、删除以及修改。
5、能够对院系进行一定的操作处理。
院系信息的多关键字检索查询。
6、能够对成绩进行一定的操作处理。
学生成绩信息的多关键字检索查询。
学生成绩信息的查询、删除以及修改。
(一)、数据流图
(二)数据字典
1、
2、
3、
4、
5、
6、
3.安全性:
1)要能够抵御用户可能的误操作,保证软件的健壮性要对数据进行检验,保证数据有效性在数据被破坏时,具有数据恢复能力
2)数据要绝对安全防止有意无意的破坏数据。
若数据遭到破坏,系统具有数据恢复功能,不可恢复的数据仅限于当日录入和修改的数据。
3)只有管理员才能修改和删除有关的数据,学生只拥有查看的权限。
严格控制对数据的修改,只能数据录入的用户才有权对数据进行修改。
4.完整性:
系统完整性要求系统中数据的正确性及相容性。
可通过建立主、外键,使用check约束,或者使用触发器和级联更新。
实体完整性:
通过建立主键索引可以保证主键字段的完整性。
域完整性:
通过建表时设置的数据类型和数据规则以及合法性检验等实现。
参照完整性:
可以通过触发器或其他引用完整性约束来实现
二、概要设计
1、学生信息实体E-R图
课程信息实体E-R图
成绩信息实体E-R图
院系信息实体E-R图
班级信息实体E-R图
奖学金信息实体E-R图
(1)依次取出局部E-R模型,对它们进行合并,直至所有的局部E-R模型都合并完为止。
在合并中,会出现一些冲突。
A、属性冲突:
包括属性域的冲突和属性取值单位的冲突。
B、命名冲突:
包括同名异义和异名同义。
同名异义:
具有不同对象的意义的对象在不同的局部E-R模型中使用了不同的名字。
异名同义:
具有同一意义的对象在不同的局部E-R模型中使用了不同的姓名。
C、结构冲突:
同一对象在不同的局部E-R模型中具有不同的抽象,也指同一实体在不同的局部E-R模型中包含不同的属性个数和排列次序,又指实体间的联系在不同的E-R模型中具有不同的类型。
经检查,未发现本系统中存在属性冲突、命名冲突、结构冲突。
(2)合并后的全局E-R模型如下:
功能模块图
三、逻辑结构设计
其任务是根据E-R模型和需求分析所产生的文档,并综合考虑所选择的具体DBMS的特点,设计出整个数据库的逻辑结构。
(1)E-R模型中的一个常规实体集转化为一个关系模式。
由常规实体学生、班级、成绩、课程、院系、奖学金转换成的关系模式如下:
学生(学号,姓名,性别,班级号,专业,联系电话,出生日期)
学生由学号唯一确定,不存在部分函数依赖和传递函数依赖。
所以已经达到3NF。
班级(班级号,年级,人数,专业,班长)
班级由班级号唯一确定,不存在部分函数依赖和传递函数依赖。
所以已经达到3NF。
成绩(课程号,学号,姓名,分数,班级号,学期,年级)
成绩由课程号和学号唯一确定,不存在部分函数依赖和传递函数依赖。
所以已经达到3NF。
课程(课程号,课程名,任课老师,班级号,年级,课时,考试类型,学期)
课程由课程号唯一确定,不存在部分函数依赖和传递函数依赖。
所以已经达到3NF。
院系(系名,专业)
院系由系名唯一确定,不存在部分函数依赖和传递函数依赖。
所以已经达到3NF。
奖学金(学号,姓名,性别,班级号,奖项,金额)
奖学金由学号唯一确定,不存在部分函数依赖和传递函数依赖。
所以已经达到3NF。
所以通过对关系模式的分析,该数据库建立的系统已达到3NF
(2)E-R模式中的一个弱实体集转换为一个关系模式,弱实体集即不能单独存在,必须依赖哪个实体集。
例如:
奖学金(学号,与学生的关系)
(3)该关系模式的属性由该关系相连的各实体的键和联系的属性组成,该关系模式的键则应根据实体集间的关系的不同类型分析考虑。
A、如果关系是1:
1的,则与该关系相连的各实体集的键均可作为关系模式的键;
B、如果关系是1:
n的,则关系模式的键应为n端实体集的键;
C、如果关系是m:
n的,则关系模式的键由该联系相连的各实体集的键组合而成。
由考试、属于,属于2、产生等联系转换成的关系模式如下:
考试(学号,课程号,学分)
属于(系名,学号)
属于2(班级号,学号)
产生(学号,课程号)
(4)根据实际情况,将具有相同键的关系模式合并。
学生(学号,姓名,性别,班级号,专业,联系电话,出生日期)和产生(学号,课程号)合并,如下:
学生(学号,姓名,性别,班级号,专业,联系电话,出生日期,课程号)
班级(班级号,年级,人数,专业,班长)和属于2(班级号,学号)合并,如下:
班级(班级号,年级,人数,专业,班长,学号)
院系(系名,专业)和属于(系名,学号)合并,如下:
院系(系名,专业,学号)
成绩(课程号,学号,姓名,分数,班级号,学期,年级)和考试(学号,课程号,学分)
合并,如下:
成绩(课程号,学号,姓名,分数,班级号,学期,年级,学分)
奖学金(学号,姓名,性别,班级号,奖项,金额)和产生(学号,课程号)合并,如下:
奖学金(学号,姓名,性别,班级号,奖项,金额,课程号)
四、物理设计
1、确定数据库的物理结构
详细了解给定的DBMS的功能和特点,特点是该DBMS所提供的物理环境和功能。
熟悉应用环境,了解所设计的应用系统中各部分的重要程度,处理频率,响应时间的要求。
了解外存设备的特征,如分块原则、块因子大小的规定、设备的I/O特征。
2、评价物理结构。
由于在物理设计过程中考虑因素很多,包括时间和空间空间效率、维护代价和用户的要求等,对这些因素进行权衡后,可能会产生多种物理设计方案。
这一阶段需对各种可能的设计方案进行评价,并从多个方案中选出较优的物理结构。
五、数据库实施
1、数据库数据的载入和应用程序的编制调试
建立数据的结构
将原始数据装入数据库
应用程序的编制调式
六、数据库运行和维护
(1)数据库的转储和恢复
(2)数据库的安全性和完整性控制
(3)数据库性能的监督、分析和改造
(4)数据库的重组织与重构造
七、SQL语言创建
使用createdatabase语言创建
1、数据库
Creatdatabase学生信息管理系统
onprimary
(name=学生信息管理系统_data,filename=’e:
\sql\学生信息管理系统.mdf’,
Size=10,maxsize=unlimited,filegrowth=10%
)
Logon
(name=学生信息管理系统_log,filename=’e:
\sql\学生信息管理系统.ldf’,
Size=5,maxsize=5,filegrowth=1
)
2、创建一个“班级信息表”class
Creattableclass
(greatint(4)notnull,
Specichar(20)notnull,
Classchar
(2)primarykeynotnull,
Monitorchar(8),
Numberint(4)
);
3、创建一个“院系信息表”院系
Creattablexueyuan
(Specichar(20)primarykeynotnull,
Sdeptchar(20)
);
4、创建一个“课程信息表”class
Creattablecourse
(greatint(4)notnull,
Specichar(20)notnull,
XueQiint
(2),
Cnoint(10)primarykeynotnull,
Cnamechar(20),
teacherchar(8),
ctimeint
(2),
sdeptchar(20),
typechar(10)
);
5、创建一个“成绩表”mark
Creattablemark
(greatint(4),
Classchar
(2),
XueQiint
(2),
snoint(10)notnul,
cnoint(10)notnul,
snamechar(8)notnull,
marksint(4)notnul,
primarykey(sno,cno),
foreignkey(sno)referencesstudent(sno),
foreignkey(cno)referencesstudent(cno),
);
6、创建一个“学生信息表”student
Creattablestudent
(snochar(10)primarykeynotnull,
snamechar(8)notnull,
ssexint
(2),
classchar
(2),
Specichar(20)notnull,
Birthdaychar(20),
Telchar(20)
);
7、创建一个“奖学金表”won
Creattablewon
(snoint(10)notnul,
snamechar(8)notnull,
ssexint
(2),
Classchar
(2),
cnoint(10)notnul,
moneyint(6),
primarykey(sno,cno),
foreignkey(sno)referencesstudent(sno),
foreignkey(cno)referencesstudent(cno),
);
Class表
grade
speci
class
monitor
number
2010
软件工程
1
赵鹏
50
2010
计算机技术
2
张海
48
2010
网络工程
3
刘兵
46
2010
应用数学
4
李青
46
2010
心理学
5
马明
39
Yuanxi表
Speci
Sdept
软件工程
计算机
计算机技术
计算机
网络工程
计算机
应用数学
数学
心理学
教育学
Course表
Grade
Class
XueQi
Cno
Tercher
Ctime
Sdept
Space
2010
1
2
数据库
40
计算机
综合楼
2010
1
1
数据结构
40
计算机
综合楼
2010
2
1
离散
36
计算机
主楼
2010
3
1
计算机网络
36
计算机
主楼
2010
2
2
操作系统
40
计算机
综合楼
2010
4
1
应用数学
42
数学
电气楼
2010
5
1
心理学
36
教育学
电气楼
Student表
Sno
Sname
Ssex
Class
Speci
Brithday
Tel
95001
李勇
男
1
软件工程
1991.7
95002
刘心
女
4
应用数学
1992.6
95003
王涛
男
2
计算机技术
1992.10
95004
张娜
女
5
心理学
1993.1
95005
赵婷
女
3
网络工程
1991.4
95006
宁贝
男
1
软件工程
1992.6
Mark表
Sno
Cno
Sname
Marks
95001
数据库
李勇
90
95002
应用数学
刘心
92
95003
离散
王涛
80
95003
操作系统
王涛
89
95004
心理学
张娜
86
95005
计算机网络
赵婷
84
95006
数据库
宁贝
87
Won表
Sno
Cno
Sname
Ssex
Money
95002
应用数学
刘心
女
400
95001
数据库
李勇
男
200
95003
操作系统
王涛
男
100
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 作业
![提示](https://static.bdocx.com/images/bang_tan.gif)