数据库期末作业
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、概述
1、数据库设计的目的和意义
本系统是针对高等院校的学生信息管理,因此信息管理系统的用户包括系统管理员、教师和学生。主要涉及院系信息、学生信息、课程信息、选课记录、成绩信息、宿舍信息等多种数据信息。
系统应具体实现的功能
用户信息实现——学生或老师输入自己的账号和密码进入该系统。
基本信息实现——系统管理员负责对各种基本信息的录入、修改、删除等操作。
信息查询实现——学生可以查询基本信息:所在院系、所在宿舍、各科的考试成绩等,系统管理员负责把老师提交的学生成绩进行管理,计算总成绩和平均成绩,统计不及格学生信息和获得奖学金学生的信息,最后再输出所有的信息。
2、适用的软件和工具
SQL server 2008、Power Designer、E-R图
二、数据库部分
1、E-R图
(1)、数据流程图
(
(2)、功能模块图
(3)、E-R图
分E-R图
3、表结构
数据项描述
课程表结构:
选课表结构:
学院表结构:
宿舍表结构:
4、索引设计
(1)、单表索引设计
为学生表创建一个以student_id为索引的关键字的唯一聚簇索引
1)展开数据库中的表右键学生表,单击所有任务弹出的索引管理。
2)在窗体点新建索引名称为student_id_index,点击复选框“聚簇索引”、“惟一值”
同理为课程表创建一个以course_cno 为索引的关键字的唯一聚簇索引;
同理为选课表创建以student_id、course_cno为索引的关键字的聚簇索引;
同理为学院表创建一个以department_ deno 为索引的关键字的唯一聚簇索引;
同理为宿舍表创建一个以dormitry_dono为索引的关键字的唯一聚簇索引;
(2)、多表索引设计
如在本数据库中的:
学生(学号、姓名、性别、专业、学院编号、宿舍编号)
选课(学号、课程编号、成绩)
课程(课程编号、课程名、学分、授课教师、上课地点)
如果查询某一种条件时需要调用学生表、选课表、成绩表等,那么我们就把学生表属性的学号,选课表表中的属性学号,选课表表中的课程编号以及课程表中的课程编号共同建立聚簇索引,以提高查询效率。
5、事务管理和并发控制设计
事务管理:系统主要应完成的功能有:学生档案管理、课程管理、成绩管理、宿舍管理、学院管理以及个人信息查询等功能。具体实务管理功能如下表
并发控制是指当多个用户同时更新运行时,用于保护数据库完整性的各种技术。并发机制不正确可能导致脏读、幻读和不可重复读等此类问题。并发控制的目的是保证一个用户的工作不会对另一个用户的工作产生不合理的影响。在某些情况下,这些措施保证了当用户和其他用户一起操作时,所得的结果和她单独操作时的结果是一样的。在另一些情况下,这表示用户的工作按预定的方式受其他用户的影响。
6、优化设计
(1)、SQL查询语句的重写,对于一个查询可以用多种查询语句实现,但不同查询语句的数据库执行计划是不同的,一旦不能够使用索引或造成较大的内存占用会导致性能下降,因此需要对查询语句进行重写优化,最典型的例子就是not in语句使用外连接方式实现来进行优化
(2)、创建合理的索引结构,根据查询语句的中查询条件,在关系表上建立相应的索引,如B+树索引和hash索引
(3)、修改程序业务逻辑,有些功能如果使用SQL语句实现,不但SQL语句复杂,还将导致数据库的负担增加,因此可以将有些数据操作的业务逻辑放到应用层进行实现,就是通过java编程实现
(4)、修改数据库服务器相关参数,优化服务器性能
三、硬件部分
1、硬件架构设计
(1)、服务器端配置
硬件配置:
安装本软件之前,需要确保计算机具有如下配置,这也是最低硬件要求:233兆赫(MHZ)Pentium或更高的微处理器(或与之相当的处理器)使用256内存(RAM最小为64MB,最大为4GB)不小于40MB的可用硬盘空间
软件配置:
安装本软件之前,需要确保计算机已安装:Micorsoft Windows XP及以上的操作系统。
2、数据库安全控制设计
(1)操作系统的安全管理
指定一位系统的UNIX系统管理员。此人员的职务是管理UNIX环境,包括使用者、应用程序、档案系统及装置。使用者的管理注重在建立适当安全性的使用者
帐号上,及定期去除不再使用的帐号。UNIX系统管理员通常必须负责维持根密码
(root password)的安全性。UNIX系统管理员必须负责执行企业的安全政策
(security policy)及5300系统上的标准。
(2)网络的安全管理:
Teradata提供的数据服务,必须通过三层结构的应用服务才能展现到最终用户
的桌面上,理论上最终用户应用访问不使用c/s的数据库联接方式,所以网络上
需要限制可以访问数据仓库服务器的IP必须为应用服务器、ETL服务器、Teradata
数据库管理客户机。
(3)数据的安全管理
数据是共同的资源,应使所有需要其中信息以完成个人任务的人员能够有效并且方便地访问这些资源。
数据的拥有权必须建立在主题的层次上,依据LDM加以管理,可妥善地授权以提供属性(attribute)层次的安全性。
前端应用安全控制
(4)前端用户的审计功能
在系统中建构针对前端用户的审计功能,记录每个业务用户访问的数据模型,使用的数据库用户,登录用户,以及具体的查询条件、查询内容和使用时间。并
提供审计人员通过前端图形界面进行审计的功能
(5)数据库权限控制
数据库登入管制、数据库存取权限同时控制
(6)开发环境操作系统的安全管理:确定网络安全和数据的安全
3、数据库备份设计
(1)、服务器本分软件方案:硬件可行性方案的拓扑结构、服务器备份软件方案设计: