
数据库设计说明书(高校选课系统)(共9页).doc
9页精选优质文档-----倾情为你奉上专心---专注---专业数据库设计说明书1引言1.1编写目的(1)巩固和加深对可扩展置标语言课程基本只是的理解和掌握 (2)掌握数据库的基本技能 (3)掌握设计数据库的基本思路和方法4)提高运用数据库解决实际问题的能力5)培养设计书写报告的能力 1.2背景系统名称:高校选课系统 任务的详细信息: a)任务提出人:刘瑾老师 b)需求分析人:黄建彬 c)面向用户:具有一定权限的管理人员(老师)和学生d)数据库管理软件:Microsoft Sql Server1.3定义Microsoft SQL Server:数据库工具1.4参考资料1.《软件工程导论》(张海藩 编著清华大学出版社 2007年5月) 2.《数据库系统概论(第四版)》(王珊编著 高等教育出版社 2007年11月)2外部设计2.1标识符和状态数据库软件:Microsoft Sql Server系统要求建立的数据库名称:sc2.2使用它的程序可能使用到的该系统的应用程序包括:A、网上学生选课B、网上测试软件系统2.3约定陈述一个程序员或一个系统分析员为了能使用此数据库而需要了解的建立标号、标识的约定,例如用于标识数据库的不同版本的约定和用于标识库内各个文卷、、记录、数据项的命名约定等。
2.4专门指导系统使用Hibernate 实现与数据库的接口,该接口基于Hibernate方法 生成的CLASS文件对数据库的建立和控制,是应用程序与数据库的桥梁最终是对class文件操作来实现对数据库的管理(一般是一个数据表对应一个CLASS文件)2.5支持软件Navicat for SQL Server :强大数据库管理及开发工具,可快速建立数据库SQL Server Management Studio:数据库图形化管理工具3结构设计3.1概念结构设计 学生E-R图教师E-R图课程E-R图选课E-R图管理员E-R图整体E-R图3.2逻辑结构设计3.2.1基本表1、教师基本表属性中文名称属性名类型长度说明教师编号Teacher_NOCHAR20教师统一编号,具有唯一性教师姓名Teacher _NAMECHAR20教师名称教师性别Teacher _SEXCHAR4教师性别教师年龄Teacher _AGEINT18~100教师Teacher_phoneCHAR20教师教师邮件Teacher_emailCHAR50邮箱地址2、学生基本表属性中文名称属性名类型长度说明学号STUDENT_NOCHAR20酒店统一编号,具有唯一性学生姓名STUDENT_NAMECHAR20学生姓名 学生性别STUDENT_SEXCHAR4学生性别学生年龄STUDENT_AGEINT18~100学生STUDENT_PHONECHAR20学生学生邮件STUDENT_EMAILCHAR50学生邮箱3、课程基本表属性中文名称属性名类型长度说明课程号COURSE_NOCHAR20课程统一编号,具有唯一性课程名COURSE_NAMECHAR20课程名 课程类型COURSE_TYPECHAR4课程类型课程学分COURSE_CREDITSMALLINT学分大于0学期COURSE_SEMSTERSMALLINT学期大于0学时COURSE_PERIODSMALLINT学时大于04、管理员表属性中文名称属性名类型长度说明管理员号Admin_NOCHAR10管理员统一编号,具有唯一性管理员名Admin_NAMECHAR20管理员名5、选课表属性中文名称属性名类型长度说明学生学号STUDENT_NOCHAR20主码:引用学生表的外码课程号COURSE_NOCHAR20主码:引用课程表的外码成绩GRADEFloat大于03.2.2视图1、未选课程(课程号,学生号)从选课基本表导出3、所有课程信息(课程号,教师号,选课状态)从课程和选课基本表导出4、选课(课程号,学生号,教师号,课程名,成绩) 从课程表、选课表导出5、学生选课生成视图选课(课程号,学生号,教师的编号,课程名,成绩,是否已选) 从选课表、课程表导出3.3物理结构设计3.3.1 数据库的存储结构通过需求分析,概要设计和逻辑设计流程得到本系统的数据库结构。
3.3.2数据的存放位置的设计 根据本系统的数据库的使用情况,主数据文件信息量大且使用频繁将其存储在高速存储器(硬盘)上将表和表上的索引存储在不同的磁盘上以便提高查询效率,同时这样可以提高物理 I/O 读写效率数据库备份文件和日志文件等文件因为使用频率小而且数据量非常大,存放在低速存储设备上 3.3.3 关系模式的存取方法 关系模式采用索引存取方法与聚簇存取方法共用 4运用设计4.1数据字典设计1.数据项编号数据项名称说 明 部 分编号数据项名 称说 明 部 分1教师编号字符串类型 有唯一性2教师姓名文本类型 长度为20字符3性别字符串类型 男、女4教师年龄 整数类型 18-1005教师字符串类型 506教师电邮件字符串类型 507学生学号字符串类型 有唯一性8学生姓名文本类型 长度为20字符9性别字符串类型 男、女10年龄整数类型 15-3011登录密码字符串类型 5012学分字符串类型 10013字符串类型 5014电子邮件字符串类型 5015选课状态real 忙:1;空闲:016课程号字符串类型 有唯一性17课程名文本类型 长度为20字符18学分字符串类型19任课教师号字符串类型 有唯一性20最大人数整数类型 20021管理员账号字符串类型 有唯一性22密码字符串类型 502、数据结构编号数据结构名属 性1教师教师编号、姓名、性别、年龄、、电子邮件2学生学号号、姓名、登录密码、性别、年龄、、电子邮件3管理员账号、密码4课程课程编号、课程名称、任课教师编号、学分、最大人数、课程简介5选课学号、课程编号、成绩、3、数据流编号数 据 流 名输 入输 出1变更教师变更信息教师信息2查询教师教师号教师信息3变更学生变更信息学生信息4查询学生学生号学生信息5变更管理员变更信息管理员信息6查询管理员管理员号管理员信息7变更课程变更信息课程信息8查询课程课程号课程信息9查询未选课程课程状态限制条件未选课程信息10选课选课号选课信息14提交选课请求课程号、任课教师号、成绩选课信息15获得选课请求选课信息课程号、任课教师号、成绩16提交选课信息课程号、学号选课信息4、数据存储数据存储名输入数据流输出数据流说 明 部 分学生信息变更学生查询学生提交选课请求教师信息变更教师查询教师获得选课请求管理员信息变更管理员查询选课信息提交选课请求查询未选课程课程信息变更课程查询课程提交选课请求查询未选课程提交课程信息提交选课信息选课信息变更选课选课获得选课请求5、处理过程处理过程名输入数据流输出数据流说 明 部 分学生登记终端变更学生变更课程选课终端提交选课请求获得选课请求管理员获得选课请求提交选课信息教师提交选课信息提交选课信息学生选课选课4.2安全保密设计在数据库中,由于用户的身份不同,对数据库的访问权限也就不同。
管理员几乎能够对所有的用户自定义表进行操作(包括增、删、改、查)但根据实际情况,学生一旦选课成功,管理员是无法对其选课信息进行修改同样,学生与教师对数据库的访问权限就更加小了这样也就保证了数据库安全性 另外一方面,数据库表中,各表之间根据实体完整性、参照完整性、域完整 性设置了各种约束一旦一张表被非法操作,如删除,修改也会影响其它的表 所以这就要求 DBA 定时进行备份,防止当数据丢失时,引起不可估量的损失。
