ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:1.38MB ,
资源ID:6901353      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6901353.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(华北科技学院计算机系综合性实验报告.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

华北科技学院计算机系综合性实验报告.docx

1、华北科技学院计算机系综合性实验报告华北科技学院计算机系综合性实验实 验 报 告 课程名称 网络数据库 实验学期 2011 至 2012 学年 第 2 学期学生所在系部 计算机学院 年级 09级 专业班级 网络B093班 学生姓名 沈亚强 学号_ 200907034313 任课教师 孙改平 实验成绩 计算机系制 网络数据库课程综合性实验报告开课实验室: 软件一室 2012 年 6 月 11 日实验题目学生成绩管理系统数据库设计一、实验目的通过该实验把数据库的理论知识(数据库和数据表的设计理论、数据完整性的实现、存储过程、触发器、数据库备份、数据库安全等)应用到具体的综合实例中,达到数据库知识整合

2、的目的。二、设备与环境硬件:多媒体计算机软件:WindowsXP以上的操作系统、Visual Basic或其它可视化语言及SQL Server 2008版本三、实验内容及要求1.数据库设计要求数据库设计要合理,对数据库设计作必要的说明并抓图。数据库名必须与自己真实姓名有关,所有同学不能同名。图不要太大,看清即可。2数据表设计要求数据表设计要合理,要符合数据库设计的理论范式,对数据表设计作必要的说明并抓图。数据表名必须与自己真实姓名有关,所有同学不能同名。3视图设计要求根据系统需求作必要的视图设计,如在一次查询中涉及到多个表,应该创建视图。不可以只取一个表的几个字段就算创建视图。4索引设计要求根

3、据系统需求作必要的索引设计,本系统需要的聚集索引、非聚集索引、唯一索引、全文索引等。5数据完整性设计根据系统需求作必要的数据完整性设计,本系统需要的实体完整性体现、域完整性体现、参照完整性体现等。6存储过程和触发器设计根据系统需求作必要的存储过程和触发器设计,本系统需要的存储过程和触发器设计。必要的存储过程和触发器设计都要写全说明,图可以是一个表的完整存储过程或触发器。7备份与恢复设计根据系统需求作必要的备份与恢复设计,如需要对那些内容备份,备份策略、由谁来做备份、什么时间做备份等。8数据库安全设计根据系统需求作必要的数据库安全设计,如本系统分几级用户、分别是什么角色成员具有什么操作权限等。四

4、、实验结果及分析1.数据库设计设计思想学生成绩管理系统数据库,要能够容纳下整个学校学生的基本信息、教师的基本信息、学校所开设的课程信息以及学生修完课程后的成绩信息,并且能够具体实现。数据库的大小根据实际情况设计其初始大小以、增长方式以及数据库文件的最大文件大小,由于学生数量、开设课程数量的不明确,可以设计数据库文件的最大文件大小方式为不限制增长。 学生成绩管理系统数据库的初始设计如下图示:2数据表设计设计思想在学生成绩管理系统里总共有四张表:学生表、教师表、课程表、成绩表。一个学生能选多门课程,一门课程可被多名学生;一门课程能被多名教师教授,一名教师亦能教授多门课程;一名教师能教多名学生。学生

5、表属性(学号、姓名、性别、年龄、专业、系部),在学生表中,学号是主键,负责记录学生的基本信息;课程表属性(课程号、课程名、教师号、学时、学分),在课程表中,课程号是主键,负责记录开设的课程的基本信息以及课程所对应的讲课教师;教师表属性(教师号、教师名、性别、教师系部、邮箱),在教师表中,教师号是主键,负责记录教师的基本信息。成绩表属性(学号、课程号、课程名、成绩、学分),在成绩表中,学号和课程号作为主键,负责记录学生选修的课程及最终成绩。具体实现学生管理系统数据库的学生表初始设计结构图如下:学生管理系统数据库的成绩表初始设计结构图如下:3视图设计设计思想创建视图V1,查询所有学生选课的信息,包

6、括学号(lno)、姓名(xname)、课程号(cno)、课程名(cname)、成绩(grate)。用于教务人员分析学生选课情况(例如网络数据库选修的学生人数为114人)及统计学生成绩情况(例如成绩不及格的学生学号、姓名、课程号)创建视图V2,查询选修某门课程的学生的成绩的信息,包括课程号(cno)、课程名(cname)、成绩(grate)、学号(lno)、姓名(xname)、系部(xdept)。用于教师分析和统计学生所选修其所教授的课程的成绩情况。创建视图V3,查询选修课程(某一专业)成绩不及格的学生学号(lno)、课程号(cno)、成绩(grate)。创建视图V4,查询网络工程专业各学生的学

7、号(lno)、其选修课程号(cno)及成绩(grate)。视图V3、V4用于辅导员对于各专业学生选课成绩的进行对比和分析,对于选课成绩不及格的学生予以记录。具体实现视图结构内部各表的键的联系图:查询所有学生选课的信息及选课成绩信息图:4索引的建立设计思想根据学生成绩管理系统的各个表的设计结构:(1)对于xsb表,按学号建立主键索引(PRIMARY KEY),组织方式为聚集索引。(2)对于kcb表,按课程号建立主键索引,组织方式为聚集索引。(3)对于cjb表,按学号+课程号建立唯一索引,组织方式为聚集索引。(4)对于jsb表,按教师号建立唯一索引,组织方式为聚集索引。以上四种情况的索引方式在设计

8、各个表结构的主键时候,已经创建了索引。对于kcb表,有时可以根据课程名(cname)列创建非聚集索引,提高检索速度。对于cjb表,可以为成绩(grate)列创建非聚集索引,学生的成绩按高到低(降序)或者按低到高(升序)排列。对于cjb表,可以为学分(xuefen)列利用FILLFACTOR语句创建非聚集索引。具体实现Cjb表的成绩(grate)列的非聚集索引、学分(xuefen)列的非聚集索引结果图:5数据完整性设计设计思想1、 实体完整性在定义实体完整性时,要求表中要有一个主键(PRIMARY KEY) ,那么对于xsb表来说,唯一能标示一名学生对应的行记录信息的字段应是学号(lno),以确

9、保该学生对应的信息在xsb表中的唯一性,其对应的值不能为空值,而其他一些属性值可设计为not null或者null,通过索引、UNIQUE约束、PRIMARY KEY约束来实现。设计玩实体完整性后,如果向xsb表中插入或者修改主码值时,如果主码值不唯一或者为空,则拒绝插入或者修改,从而保证了实体完整性。对于学生成绩管理系统数据库中的kcb表、jsb表、cjb表,它们对应的主键分别为:Kcb表: 设置课程号(cno)属性作为唯一标示一门课程的主键。Jsb表:设置教师号(tno)属性作为唯一标示一名教师的主键。Cjb表:设置学号(lno)和课程号(cno)属性共同作为kcb表的主键。主键字段所对应

10、的值不能为空,亦不能出现重复的值,一旦向各个表中插入或者修改主键值时,如果主码值重复或者为空,则拒绝插入或者修改,从而保证了实体完整性。2、 域完整性域完整性指定给列的有效性,其包括:列值非空、列值唯一、CHECK短语,列值非空与列值唯一的符号分别为notnull和unique,其设计比较简单,另外,有些属性值需要有范围限制的则要用CHECK语句短语进行指定。例如:对于学生成绩管理数据库XSCJ313的cjb表,学生的成绩范围应在0100之间,为了对“成绩”这一数据项输入的数据范围进行限制,可以定义成绩字段的约束条件来达到目的。当学生成绩更改的值超过100或者低于0的值,将返回错误提醒。3、

11、参照完整性对于学生成绩管理数据库中的xsb表的每一个学号,在cjb表中都有相关的课程成绩记录,将xsb表作为主表,“学号(lno)”字段定义为主键,cjb表为从表,表中的“学号”字段定义为外键;另外,学生成绩管理数据库中的kcb表的每一个课程号,在cjb表中都有相关的课程成绩记录,将kcb表作为主表,“课程号(lno)”字段定义为主键,cjb表为从表,表中的“课程号(lno)”字段定义为外键。其实在学生成绩管理数据库各个表的属性间还可建立其他组参照完整性,例如:cjb中的学号和课程号是分别参照引用xsb表的主码和kcb表的主键;当设计参照完整性时有些操作会发生级联操作,例如删除 xsb表中的元

12、组,学号值为200907024301,则要从cjb表中删除cjb.lno=2009070243o1的所有元组。Cjb 表与kcb表 、xsb表间的参照关系图如下图所示:6存储过程和触发器设计设计思想(根据系统需求作必要的存储过程和触发器设计的简单说明)1、存储过程的创建(1)返回计算机系(或者其他系)学生的成绩情况,存储过程不使用任何参数。(2)从三个表中的连接中返回指定学生的学号、姓名、所选课程名称及该课程的成绩,存储过程在参数中使用了模式匹配。2、触发器的创建(1)创建触发器,当向cjb表中插入一名学生的成绩时,将xsb表中该学生的总学分加上添加的课程的学分,不及格的加0。(2)创建触发器

13、,在删除xsb表中的一条学生记录时将cjb表中该学生的相应记录也删除。(3)创建学生成绩管理数据库作用域的DDL触发器,当删除一个表时,提示禁止该操作,然后回滚删除表的操作。当删除数据库中的任何一个表时,会出现如下信息提示:(4)创建DDL触发器,当删除一个数据库时,提示禁止该操作并回滚删除该数据库的操作。(5)除了以上创建的触发器之外,还可创建其他类型的触发器,例如:当修改kcb表中的课程号字段时,同时也要修改cjb表中的该课程号;当修改xsb表中的学号时,同时也要讲cjb表中的学号修改城响应的学号;可以在视图上创建INSTEAD OF触发器,当向视图中插入数据时分别向表xsb表和cjb表插

14、入数据,从而实现从视图插入数据的功能。7备份与恢复设计设计思想针对学生成绩数据库进行备份,就是制作数据库架构、对象以及数据的副本,以便在数据库遭到严重破坏的时候能够修复数据库。定期备份数据库是最稳妥的防止磁盘故障(主要是系统发生故障)的方法,它能有效的恢复数据,这是一种比较方便的保险形式,同时也是最简单的确保能恢复大部分信息的方法。建立一个完整的备份策略需要考虑很多因素:(1)备份内容:对于学生成绩管理数据库来说,学生的信息量有好几万条,一旦系统出现故障或者其他原因故障,会造成无可挽回的损失。因为学生信息不是经常会改动,所以会考虑对数据库进行完全备份策略。(2)备份周期:学生成绩管理数据库的改

15、动一般是有新的学生信息注入、学生成绩的输入和改动、开设课程的变动、教师的调动会使得数据库发生变化,一般这周期一般是每月或者每学期或者是某一星期发生变动,所以学生成绩管理数据库的备份周期一周或者一个月。 (3)由谁做备份:对于学生成绩管理数据库来说,对该数据库做备份的角色可以有系统管理员或者是允许进行数据库备份的用户(通过设置登录名和口号)。(4)可以对学生成绩管理数据库采用动态备份方式,允许数据库在运行的时候进行自动备份,采用磁盘介质进行备份。(5)不同的时间段,可以采用不同的方式进行备份程序,白天可以自己手工的进行备份,而晚上的备份,可以采取自动备份,比较方便。(6)为了数据库的安全备份的进

16、行,在必要的时候需要设置其他的登录号和口令,防止数据被人为的破坏。(7)此外,定期的把某些数据,某些表或全部数据备份到光盘,软盘中,放于保险的安全处,也不失为一种好方法。8数据库安全设计设计思想学生成绩管理数据库的用户可分为:(1)只允许用户(例如:学生、辅导员)对数据库中的各个表只有查询权限(2)允许用户(例如:教师)对成绩表拥有查询和修改的权限(3)允许用户(例如:教务人员)对教师表和课程表拥有查询、删除、插入的权限 其中用户学生和辅导员对数据库具有同一类的权限,故可创建一个角色对着两个用户进行管理;另外用户教师属于对成绩表有查询和修改权限的这一类权限的角色;用户教务人员属于对教师表和课程

17、表拥有查询、删除、插入的权限的这一权限的角色。 以Windows身份验证的方式登录SQL Server,在此模式下创建各个用户,并授予不同类的用户以不同的权限。具体实现用户STUDENT对学生成绩管理数据库的cjb表、kcb表、xsb表拥有的SELECT权限:2、将拥有相同权限的用户添加到同一个角色当中(1)用户学生和辅导员对数据库具有相同的权限,故添加到角色ROLE_SELECT中(2)用户教师对成绩表有查询和修改权限,将其添加到角色ROLE_SUI中(3)用户教务人员对教师表和课程表拥有查询、删除、插入的权限,将其添加到角色ROLE_SUDID中。具体实现3、同时利用DENY命令可以拒绝当

18、前数据库内的用户授予的权限,并防止数据库用户通过其组或角色成员资格继承权限;最后可利用REVOKE命令可撤销以前给当前数据库用户授予或拒绝的权限,使得用户对数据库无任何访问权限和操作。五、体会学生成绩管理数据库的设计主要数据库涉及到的实体进行分析、简化,相对来说比较简单。但是由于主要以课本为依据,所以整个设计做下来基本掌握了课本上数据库的基础操作。设计过程中我也遇到了一些问题,再向老师和其他同学请教的过程中我收获了很多。感觉建立一个完整的数据库的过程很复杂,在建数据库之前,首先要了解需求和其相关信息,如果是涉及到需求中的各种联系的话,那就更复杂啦!了解完需求之后,要考虑到数据库中有关实体的属性

19、及其和其它体实体的联系,考虑到实体关系模式的范式还有实体与实体之间的联系的关系模式,另外还得优化等等。感觉做起来有点费劲,所以在建成绩查询系统时,还是存在很多漏洞和考虑不周到的地方,听取老师的讲解后,甚是收获。六、参考文献1、数据库技术与联机分析处理/王珊主编北京科学出版社,1998.122、数据库原理及应用第二版/钱雪忠主编北京邮电大学出版社,2007.8 3、数据库系统概论第四版/王珊,萨师煊主编高等教育出版社,2006.5 4、SQL Server实用教程第三版/郑阿奇主编电子工业出版社,2009.12教 师 评 价评定项目ABCD评定项目ABCD数据库设计数据完整性设计数据表设计存储过程和触发器设计视图设计备份与恢复设计索引设计数据库安全设计报告规范文字流畅其他:评价教师签名:2012年 6 月 18 日

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1