网络课程平台数据库设计(网络测试方面)第一章系统需求分析1、1需求概述随着科学技术得不断提高,计算机科学日渐成熟,其强大得功能已为人们深刻认识,它已进入人类社会得各个领域并发挥着越来越重要得作用。
作为计算机应用得一部分,使用计算机进行网络教学,有着传统教学所无法比拟得优点。
例如:使用方便、可靠性高、存储量大、保密性好、扩展性高、成本低等,并且突破传统教学得地域限制。
这些优点能够极大地提高学生学习得效率与老师得教学。
因此,开发一套网络课程平台管理系统成为很有必要得。
学网络课程平台管理系统提供了强大得学生自主学习功能,同时也方便系统管理员对学生成绩等信息得添加、修改,打印等操作,同时一样得方便学生对自己各科成绩查询,学习得交流。
开发一个网络课程平台管理系统,采用计算机对学生成绩进行管理,进一步提高了办学效益与现代化水平。
为教师与学生提高工作效率,实现互联网教学管理工作流程得系统化,规范化与自动化。
在今天信息时代传统得教育方法必然会被计算机为基础得互联网教育系统所代替,一个高效得网络课程平台可以给予学生无空间,无时间限制得自主学习,可以使传统得教学得效率更加得提高,节约了传统得教育成本。
用户可以迅速查到所需信息,学生在能方便得查瞧自己得成绩与自己得学习目标。
网络课程平台数据库应具有以下功能(1)能够实现学生自主选择网络课程,在完成必要公修课之后学生可以在自己得课余时间里选择一些课程来充实自己,相当于学生得选课系统中得选课环节(2)管理员能够可以平台得数据进行统一得管理与维护此平台系统易于不同权限管理员管理,保证数据得安全性。
也将数据库工作均匀得分配,做到数据库得高效管理(3)相关教师能够对自己所辖课程进行简单管理、查询、打印等工作老师可以实时地观瞧所辖课程得情况,了解每位学生得学习与测试情况,并且可以将某些信息打印下了。
(4)能够对教学任务进行科学得管理记录用户使用平台得日常情况,例如存储教师所需要得教学资料,学生在网络得学习记录,与其她用户得交流1、2 需求描述1、2、1数据流图图1-1网络课程平台得第一层数据流图图图1-2学生操作管理数据流图(第二层)图1-3 课程管理操作数据流图(第二层)图1-4 成绩管理操作数据流图(第二层)、图1-3教师操作管理数据流图(第二层)1、2、2数据字典1、2、2、1数据结构编号数据项数据项别名数据类型数据项含义1 教师号Jnumvarchar(20)主码2 教师名Jname varchar(20)3 院系College varchar(20)编号数据项数据项别名数据类型数据项含义1 学生号Snumvarchar(20) 主码2 学生名Sname varchar(20)3 院系College varchar(20)4 专业班级Class varchar(20)1 班级号bnum varchar(20) 外码编号数据项数据项别名数据类型数据项含义1 班级号bnum varchar(20) 主码2班级名bnamevarchar(20) 非空3 班长Moniter varchar(20)4 院号Ynum varchar(20) 外码编号数据项数据项别名数据类型数据项含义课程信息第2章系统初步设计2.1 基于PowerDesigner得数据库设计2.1.1概念数据模型概念模型就是现实世界到机器世界得一个中间层次。
概念模型用于信息世界得建模,就是现实世界到信息世界得第一层抽象,就是数据库设计人员进行数据库设计得有力工具,也就是数据库设计人员与用户之间进行交流得语言,因此概念模型一方面具有较强得语义表达能力,能够方便、直接地表达应用中得各种语义知识,另一方面它还简单、清晰、易于用户理解。
信息世界涉及得概念主要有:(1)、实体(Entity):客观存在并相互区别得事物称为实体。
实体可以就是具体得人、事、物,也可以就是抽象得概念或联系。
(2)、属性(Attrbute):实体所具有得某一特性称为属性。
一个实体可以有若干个属性。
(3)、码(Key):唯一标识实体得属性集称为码。
(4)、域(Domain):属性得取值范围称为该属性得域。
(5)、实体型(Entity Type):具有相同属性得实体必然具有共同得特性与性质。
用实体名及其属性名集合来抽象与刻画同类试题,称为实体型。
(6)、实体集(Entity Set):同一类型实体得集合称为实体集。
(7)、联系(Relationship):在现实世界中,事物内部以及事物之间就是有联系得,这些联系在信息世界中反映为实体(型)内部得联系与实体(型)之间得联系。
实体内部得联系通常就是指组成实体得各属性之间得联系;实体之间得联系通常就是指不同实体集之间得联系。
概念模型表示得方法很多,其中最为著名最常用得就是P、P、S、Chen于1976年提出得实体-联系方法(Entity-Relationship Approach)。
该方法用E-R图(E-R Diagra m)来描述现实世界得概念模型,E-R图方法也称为E-R模型。
E-R图为实体-联系图,提供了表示实体型、属性与联系得方法,用来描述现实世界得概念模型。
构成E-R图得基本要素就是实体型、属性与联系。
2、1、1、1由界面设计E-R图课程学习得E-R图选择选修课得E-R图查询课程成绩得E-R图管理课程过程得E-R图2、1、3物理表结构设计编号说明字段名称数据类型1教师号Jnum varchar(20)2 教师名Jname varchar(20)3 院系College varchar(20)学生信息编号说明字段名称数据类型1 学生号Snum varchar(20)2 学生名Sname varchar(20)3院系College varchar(20)4 专业班级Class varchar(20)1 班级号bnumvarchar(20)编号说明字段名称数据类型1班级号bnum varchar(20)2 班级名bnamevarchar(20)3班长Moniter varchar(20)4 院号Ynum varchar(20)编号说明字段名称数据类型1 院号Ynum varchar(20)2院名bname varchar(20)3 院长Monitervarchar(20)编号说明字段名称数据类型课程内容选课信息课程成绩信息/*================*//*DBMSname: Sybase SQLAnywhere 11*/ /*Created on:2014/12/2221:46:59 *//*==============================================================*/ifexists(select 1from sys、sysforeignkey where role='FK_RELATION_RELATIONS_课程信息') thenalter tableRelationship_4delete foreignkeyFK_RELATION_RELATIONS_课程信息end if;if exists(select1 from sys、sysforeignkey where role='FK_RELATION_RELATIONS_学生信息')thenalter table Relationship_6deleteforeign key FK_RELATION_RELATIONS_学生信息end if;if exists(select 1from sys、sysforeignkey where role='FK_学生信息_RELATIONS_班级') thenalter table 学生信息delete foreignkey FK_学生信息_RELATIONS_班级end if;if exists(select1from sys、sysforeignkey where role='FK_班级_RELATI ONS_院系')thenalter table 班级delete foreign key FK_班级_RELATIONS_院系endif;ifexists(select1from sys、sysforeignkeywhere role='FK_课程信息_RELATIONS_教师信息')thenalter table 课程信息delete foreignkey FK_课程信息_RELATIONS_教师信息endif;ifexists(select 1 from sys、sysforeignkeywhere role='FK_课程内容_RELATIONS_课程信息') thenaltertable 课程内容delete foreign keyFK_课程内容_RELATIONS_课程信息end if;if exists(select 1 fromsys、systablewhere table_name='Relationship_4'andtable_typein ('BASE', 'GBLTEMP'))thendrop table Relationship_4endif;ifexists(select 1 from sys、systablewhere table_name='Relationship_6'and table_type in ('BASE', 'GBL TEMP'))thendrop table Relationship_6end if;ifexists(select1from sys、systablewheretable_name='学生信息'and table_type in ('BASE', 'GBL TEMP'))thendrop table 学生信息end if;if exists(select 1 from sys、systablewhere table_name='教师信息'and table_type in ('BASE','GBL TEMP')) thendrop table 教师信息endif;ifexists(select1from sys、systablewhere table_name='班级'and table_typein ('BASE', 'GBL TEMP')) thendrop table 班级endif;ifexists(select 1 fromsys、systablewhere table_name='课程信息'and table_type in('BASE','GBL TEMP')) thendrop table 课程信息end if;ifexists(select 1 fromsys、systablewhere table_name='课程内容'and table_typein('BASE', 'GBLTEMP')) thendrop table 课程内容end if;ifexists(select1from sys、systablewhere table_name='课程成绩信息'and table_type in('BASE', 'GBL TEMP')) thendroptable 课程成绩信息endif;if exists(select1 fromsys、systablewhere table_name='选课信息'and table_type in('BASE','GBLTEMP'))thendrop table 选课信息end if;if exists(select 1 from sys、systablewheretable_name='院系'and table_typein ('BASE','GBL TEMP'))thendrop table 院系end if;/*==============================================================*//*Table: Relationship_4 *//*==============================================================*/create table Relationship_4(cnum char(20) not null,constraintPK_RELATIONSHIP_4 primary key(cnum));/*==============================================================*/ /*Table:Relationship_ 6 *//*==============================================================*/create table Relationship_6(snumchar(20)not null, constraintPK_RELATIONSHIP_6 primary key(snum));/*==============================================================*//* Table: 学生信息*/ /*==============================================================*/create table学生信息(snum char(20) notnull,bnum char(20)null,snamechar(20) null,college char(20)null,class char(20)null,constraint PK_学生信息primarykey (snum));/*==============================================================*//* Table:教师信息*//*==============================================================*/create table 教师信息(jnum char(20) not null,jname char(20) null, college char(20) null,constraint PK_教师信息primarykey (jnum));/*==============================================================*//*Table: 班级*//*==============================================================*/create table 班级(bnumchar(20) notnull, ynum char(20)null,yname char(20) null,moniter char(20)null,constraintPK_班级primary key (bnum));/*==============================================================*//*Table:课程信息*//*==============================================================*/create table 课程信息(cnum char(20)not null,jnumchar(20) null, cname char(20)null, cattribute char(100)null,"time"timestamp null, constraint PK_课程信息primarykey (cnum));/*==============================================================*//* Table:课程内容*//*==============================================================*/create table 课程内容(cnum char(20) null,课程内容块号char(20) notnull,课程内容char(20) null );/*==============================================================*//* Table: 课程成绩信息*//*==============================================================*/create table课程成绩信息(gradechar(20)null,"time" timestampnull);/*==============================================================*//* Table: 选课信息*//*==============================================================*/createtable 选课信息("time" timestampnull);/*==============================================================*//* Table: 院系*//*==============================================================*/create table院系(ynum char(20)notnull,yname char(20) null, moniterchar(20) null,constraint PK_院系primary key (ynum));alter table Relationship_4add constraint FK_RELATION_RELATIONS_课程信息foreign key(cnum)references课程信息(cnum)on update restricton delete restrict;alter table Relationship_6add constraintFK_RELATION_RELATIONS_学生信息foreignkey (snum)references 学生信息(snum)on update restricton delete restrict;alter table学生信息addconstraint FK_学生信息_RELATIONS_班级foreign key(bnum) references班级(bnum)on update restricton deleterestrict;alter table班级add constraintFK_班级_RELATIONS_院系foreign key(ynum) references 院系(ynum)on updaterestricton delete restrict;alter table课程信息add constraint FK_课程信息_RELATIONS_教师信息foreign key(jnum) references 教师信息(jnum)on updaterestricton deleterestrict;alter table 课程内容addconstraint FK_课程内容_RELATIONS_课程信息foreign key(cnum)references课程信息(cnum)on update restricton deleterestrict;2.2 数据库不规范化设计举例关系数据库中得关系就是要满足一定要求得,满足不同程度要求得为不同范式。