数据库系统课程设计-课程管理数据库课程设计.doc_第1页
数据库系统课程设计-课程管理数据库课程设计.doc_第2页
数据库系统课程设计-课程管理数据库课程设计.doc_第3页
数据库系统课程设计-课程管理数据库课程设计.doc_第4页
数据库系统课程设计-课程管理数据库课程设计.doc_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据库系统课程设计题 目 课程管理数据库设计 院 系 信息技术与工程学院 专 业 计算机科学与技术 姓名/学号 班级名称 指导教师 王昌厚 2015年12月30日成绩 一、 前言:2二、 需求分析:21 系统管理员22 学生用户33 教师用户3三、 概念结构设计31 分E-R图32 局部E-R图43 合并E-R图5四、 逻辑结构设计61 关系数据模型62 细化表结构6五、 物理结构设计及实施81 创建表82 各表之间的关系如图:93 物理结构如下10六、 总结11七、 主要参考文献12八、 附录121、 前言:考虑到课程管理这个时间与我们大学生活是如此贴近,在我们平时课程管理也经常出现一些不足,所以我选择“课程管理系统”这个课题。本课程管理系统仅需满足三类用户的要求,分别是系统管理员、教师和学生,他们所具有的操作权限以及操作内容各有不同。要求系统可以满足以下功能:系统管理员能对学生信息、教师信息、课程信息进行有效的管理和维护,包括增加、删除、修改和查询;教师和学生能够对个人基本信息、授课和选课所涉及的有关信息进行查询和更新操作。由于一般高校的学生比较多,因此就带来的诸多如信息管理等问题。鉴于需要将学生信息、选课信息等信息数字化以便于维护管理,我们便想到了利用数据库更加准确的解决此类问题。所以我们决定设计一个适用于高校课程管理系统2、 需求分析:该系统应该能管理学校的教师信息、学生信息、专业信息、学校开设的所有课程信息、学生选修课程的信息等。选课系统主要满足三类用户的要求,这三类用户分别是教务处的系统管理员、教师和学生。他们所具有的操作权限以及操作内容是不同的。具体的需求分析如下:1 系统管理员维护学生的个人基本信息,实现对学生个人信息的增、删、改、查,学生信息包括学号、姓名、性别、年龄、入学时间、系别、专业、密码。维护教师的个人基本信息,实现对教师个人信息的增、删、改、查,教师信息包括教师工号、姓名、性别、密码。维护课程的个人基本信息,实现对课程个人信息的增、删、改、查,课程信息包括课程号、课程名、学分。2 学生用户2.1 查询和修改个人信息。2.2 进行选课操作2.3 学生可以查看自己所选课程信息及以前所选课程的成绩信息。3 教师用户3.1 查询和修改个人信息3.2 课程结束后,登记成绩3.3 教师可查看自己的教学安排。3、 概念结构设计根据需求分析,设计出“学生选课系统”的E-R图,该E-R图包括四个实体:学生信息实体、教师信息实体、管理员信息实体、课程信息实体,还有选课信息E-R图和授课信息E-R图。1 分E-R图 各个实体的分E-R图分别如下图所示: 管理员登录实体图用户登录用户名密码 图1 学生信息实体图学生信息姓名学号年龄入学时间系别性别密码专业图2 教师信息实体图教师信息姓名工号性别密码 图3 课程信息实体图课程信息课程号课程名学分 图4 选课信息实体图选课信息学号课程号学生成绩图5 授课信息实体图授课信息课程号学时教师工号图62 局部E-R图 学生课程关系E-R图nmm课程学生选修成绩图7 教师课程关系E-R图nm1教师课程教授课时图8 教师学生关系E-R图nm1教师学生教授学分图9 管理员学生关系E-R图nmm管理员学生管理图103 合并E-R图本系统的数据库实体主要有“学生”、“教师”、“课程”、“管理员”等。其中“教师”与“课程”存在“开设”联系,并且一个教师可以开设N门课程,即“教师”与“课程”之间是一对多的关系。同样“学生”与“成绩”也存在一对多的关系。一个学生可以学习N门课程,一门课程可以有M个学生学习,即“学生”与“课程”之间是多对多的关系。同样“学生”与“成绩”之间也是多对多的关系。整个数据库可以用一个E-R图表示总的ER图nn1mnnn11管理员课程学生选课管理管理管理教师开设教授1n图114、 逻辑结构设计根据上节E-R图可以将系统中的概念模型转换为具体的表(即关系)结构。1 关系数据模型本系统共设计6个关系,详细信息如下所示:学生(学号、姓名、性别、年龄、入学时间、系别、专业、密码)教师(教师工号、姓名、性别、密码)管理员(管理员工号 密码)课程(课程号、课程名、学分)选课(学号、课程号、成绩)授课(教师工号、课程号、课时)2 细化表结构为方便,根据上述文字描述,用英文简写为表和列取名,确定列的数据类型及必要的约束规则,给出如下所示数据库表的基本结构及说明:用户登录信息表adm表1:Admin列名数据类型是否为空说明UsernameChar(20)Notnull(主键)用户名UserpasswordChar(20)notnull密码 学生信息表student表2:student列名数据类型是否为空说明Sno Char(20)Notnull(主键)学号SnameChar(20)notnull姓名SsexChar(20)null性别SageIntnull年龄SenttimeDatetimenull入学时间SmajorChar(20)null专业SsdeptChar(20)null系别SpassChar(20)null密码 课程信息表course表3:course列名数据类型是否为空说明CnoChar(20)Notnull(主键)课程号CnameChar(20)notnull课程名Ccredtfloatnull学分 选课信息表sc表4:sc列名数据类型是否空说明SnoChar(20)Notnull(外主键)学号Cno Char(20)Notnull(外主键)课程号Grade intnull成绩 教师表teacher 表5:teacher列名数据类型是否空说明TnoChar(20)Notnull(主键)教师工号Tname Char(20)notnull教师姓名Tsex Char(20)null教师性别TpassChar(20)Notnull密码 授课表tc表6:tc列名数据类型是否空说明TnoChar(20)Notnull(外主键)学号Cno Char(20)Notnull(外主键)课程号CtimeChar(20)null课时5、 物理结构设计及实施1 创建表考虑到各个表之间的约束条件以及外键索引等要求,在创建表的时候应该按照一定的次序进行创建,否则会很容易出现错误。本报告册中采用的是先创建各个基本表,然后在对特定的表添加列和外码约束。本系统共创建了六个表:管理员信息表、教师信息表、学生信息表、课程信息表、学生选课表、教师授课表。 创建adm管理员表如下图:图12 创建教师表teacher如图:图13 创建学生表student如图:图14 创建课程表course如图:图15 创建选课表sc如图:图16 创建授课表tc如图:图172 各表之间的关系如图:图183 物理结构如下create dababase coursegouse coursegocreate table adm(Username char(20) primary key not null,Yesrpassword char(20) not null)gocreate table student(Sno char (20) primary key not null,Sname char (20) not null ,Ssex char (2) null ,Sage int null,Senttime Datetime null,Smajor char(20) null,Sdept char (20) null,Spass char(20) null)gocreate table course(Cno char (20) primary key not null ,Cname char (20) not null ,Ccredit float null,)gocreate table sc(Sno char(20) not null,Cno char(20) not null,Grade int null,primary key (Sno,cCno) ,foreign key (Sno) references student (Sno),foreign key (Cno) references course (Cno)gocreate table teacher(Tno char(20) primary key not null,Tname char(20) not null,Tsex char(20) null,Tpass char(20) not null)go create table tc(Tno char(20) not null,Cno char(20) not null,Ctime char(20) nullprimary key (Tno,Cno),foreign key (Tno) referenced teacher(Tno),foreign key (Cno) referenced course(Cno)6、 总结本学期我们开设了数据库原理与应用这门课,经过学习,我对数据库的原理和使用有了一定的了解,但是对于数据库的实际应用并不是那么清晰的明白,但是有了这一个多星期数据库的课程设计,我对数据库有了新的认识。“课程管理系统”这个课题确实给我带来了很大的挑战,开始以为只是建立几个表,后来才知道数据库的设计是一个系统,还存在着表与表之间的联系,因此我必须要有一个宏观上的认识。在本次课程设计中,我学到了很多新的知识,比如如何使用SQL Server2005创建完整的数据库,如何将页面合理的与数据库进行连接等等。在课程设计的过程当中也会遇到很多自己不能解决的问题,通过自己查阅资料,向同学老师寻求帮助,最终这些问题都解决了,我的“课程管理系统”也更加的完整合理。同时也提高了我的自学能力,在设计过程中,查阅了不少资料,包括网络资料和书籍等,让我收获了许多意想不到的东西,对以后数据库的学习与应用有了很大程度上的提高!7、 主要参考文献数据库系统概论(第四版 高等教育出版社)数据结构(C语言版 清华大学出版社)计算机操作系统(第三版 西安电子科技大学出版社)8、 附录测试数据:insert into adm values(zhangsan,123)insert into adm values(lisi,123)insert into adm values(wangwu,123)insert into adm values(zhaoliu,123)insert into adm values(cuishengliang,123)insert into adm values(kaishi,123)insert into adm values(shengdai,123)insert into adm values(jiujing,123)insert into student values(201315105,胡颖笔,男,20,20130910,计算机,计算机,123)insert into student values(201315106,梁树得,男,20,20130910,计算机,计算机,123)insert into student values(201315107,罗开是,男,16,20130910,生物,生物科学,123)insert into student values(201315108,崔贾易,男,18,20130910,数学,数学,123)insert into student values(201315109,黎拓树,男,20,20130910,英语,应用英语,123)insert into student values(201315110,贺声代,男,17,20130910,计算机,123)insert into student values(201315111,方久景,女,20,20130910,英语,123)insert into student values(201315112,魏沉因,男,18,20130910,数学,123)insert into student values(201315113,龚愈枫,男,20,20130910,计算机,123)insert into student values(201315114,贾到黎,女,17,20130910,英语,123)insert into student values(201315115,邹桥梁,女,20,20130910,计算机,123)insert into student values(201315116,钱宿钟,男,19,20130910,数学,123)insert into student values(201315117,万首情,男,16,20130910,计算机,123)insert into student values(201315118,胡睛音,女,16,20130910,数学,123)insert into student values(201315119,段的写,女,20,20130910,计算机,123)insert into teacher values(13113,龚愈枫,男,40)insert into teacher values(13114,贾到黎,女,27)insert into teacher values(13115,邹桥梁,女,29)insert into teacher values(13116,钱宿钟,男,49)insert into teacher values(13117,todd,男,36)insert into teacher values(13118,胡睛音,女,36)insert into teacher values(13119,marry,女,30)insert into course values(001,英语,4)insert into course values(002,数学,2)insert into course values(003,数据库,4)insert into course values(004,计算机组成原理,3)insert into course values(005,操作系统,6)insert into course values(006,c+程序设计,4)insert into course values(007,计算机网络,2)insert into sc values(201315105,001,80)insert into sc values(201315106,002,69)insert into sc values(201315107,004,90)insert into sc va

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论