学生选课数据库设计_第1页
学生选课数据库设计_第2页
学生选课数据库设计_第3页
学生选课数据库设计_第4页
学生选课数据库设计_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

1、太原师范学院管理系数据库系统概论 学生选课数据库设计实验报告系别: 专业:班级: 学号:姓名: 日期:201第一章 设计内容与目标- 1 -1.1设计内容- 1 -1.2设计目标- 1 -第二章 需求分析- 1 -2.1需求背景- 1 -2.2选课分析- 2 -第三章 概要设计- 2 -3.1各属性E-R图- 2 -3.2总 E-R图- 3 -第四章 逻辑设计及规范化- 4 -4.1 关系模型- 4 -4.2关系数据表 - 4 -第五章 数据库对象设计- 6 -5.1 SQL物理结构设计- 6 -1.新建数据库- 6 -2.新建用户名和密码表- 6 -3.新建学生表- 6 -4.新建教师表-

2、7 -5.新建课程表- 7 -6.新建选课表- 8 -7.新建讲授表- 8 -5.2主要查询功能sql语句- 9 -1 登陆管理- 9 -2 学生信息管理- 9 -3 课程管理- 9 -4 查询管理- 10 -5.3选课系统设计要求内容- 10 -第六章 心得体会- 12 -第一章 设计内容与目标1.1设计内容我设计的是学生选课管理系统,选课管理系统是学校教务系统中很庞大、很复杂的一个数据库系统,在这里我将其简化,只粗略的列举了比较直观的关系模式。此系统涉及学生信息、教师信息、课程信息、选课信息、还有成绩管理及查询。 1.2设计目标所实现的功能有:能记录、学生、教师以及课程的基本情况,能记录学

3、生所选的课程以及相应的成绩和授课教师。为了简化,每个教师最多教授一门课程,每个学生最多可选一门课程或者不选,每个学生选修的每门课程有一个成绩记载,学生在系统中可以有查询成绩的权限,管理员有修改成绩的权限。 第二章 需求分析2.1需求背景随着信息时代科技不断提高,学校规模不断扩大,教学质量不断提高,大学期间有许多选修课,以往的选修课方法是课堂报名或者纸上填写方式报名,这种方法虽然直接,但是造成选课的盲目性,而且学生选过课程后不好在更改查看,一方面浪费大量的人力,物力资源,另一方面浪费时间以及在认为统计过程中不可避免的出现差错的情况。这给广大的老师和学生带来诸多的不便,管理起来也相当困难。使用网上

4、选课系统可以提前进行网上选课,并且选课以后学生还可以在查看和更改,随意选择各个老师的课程,老师管理起来也比较方便。鉴于它的重要性,这就迫切需要研制开发一款功能强大,操作简单,具有人性化的网上选课系统。- 0 -2.2选课分析根据分析,本系统的实体有学生、教师、课程和选课信息。描述学生的属性有:学号、姓名、性别、年龄、专业。描述教师的属性有:教师编号、姓名、性别、职称、专业。描述课程的属性有:课程编号、课程名称、课程类型、学时、学分。描述选课信息的属性有:学号、课程编号、考试成绩。每个学生只能属于一个院系,每个学生最多可选一门课程或者不选,每个教师教授最多一门课程。学生进入查询系统后只能有查询功

5、能,管理员进入则可以有修改成绩的权限。用户登录时需要有一个用户名和密码。第三章 概要设计3.1各属性E-R图学生 年龄性别姓名专业学号教师专业职称教师编号姓名性别课程学分学时课程编号课程名称课程类型 登录 密码用户名选课课程编号号号成绩学号3.2总 E-R图数据库的E-R图:学号学生姓名m性别选课教师编号2姓名性别职称专业nmn年龄课程教师讲授专业学分学时上课时间课程类型课程名称课程编号第四章 逻辑设计及规范化4.1 关系模型 登陆(用户名、密码)学生(学号、姓名、性别、年龄、专业、班级)教师(教师编号、姓名、性别、职称、专业)课程(课程编号、课程名称、课程类型、学时、学分)选课信息(学号、课

6、程编号、考试成绩)4.2关系数据表 Register属性名数据类型可否为空含义完整性约束条件UserSIDChar(10)否用户名passwordChar(10)否密码STUDENT属性名数据类型可否为空含义完整性约束SIDint否学号主码SIDchar(10)否姓名SEXchar(2)是性别AGEInt是年龄MAJORchar(20)是专业YXchar(10)是已选TEACHER属性名数据类型可否为空含义完整性约束TIDint否教师编号主码TSIDchar(10)否姓名TSEXchar(2)否性别ZCchar(10)否职称MAJORchar(20)否专业COURSE属性名数据类型可否为空含义

7、完整性约束IDInt否课程编号主码SIDchar(10)否课程名称TYPEchar(10)否课程类型GRADEInt可以学分PEROIDInt可以学时XK属性名数据类型可否为空含义完整性约束SIDint否学号主码IDint否课程编号GRADEint是成绩JS属性名数据类型可否为空含义完整性约束IDint否课程编号主码TIDint否教师编号TTIMEdatetime是上课时间第五章 数据库对象设计5.1 SQL物理结构设计1.新建数据库Create database SCdatabase2.新建用户名和密码表Create table register( userSID char(10),pass

8、word2 char(10);3.新建学生表Create table STUDENT(SID int NOT NULL primary key ,NAME char(10) NOT NULL,SEX char(2) NOT NULL default '男' check(SEX='男' or SEX='女'),AGE int NOT NULL,MAJOR char(20) NOT NULL,YX char(10) NOT NULL,)insert into STUDENT values ('2014213108',''

9、;,'男','21','','')insert into STUDENT values ('2014213113','','男','21','','')insert into STUDENT values ('2014213138','','女','23','','')insert into STUDENT values ('2014

10、213141','','男','22','','')insert into STUDENT values ('2014213149','','男','22','','')insert into STUDENT 4.新建教师表Create table TEACHER(TID int NOT NULL primary key,TNAME char(10) NOT NULL,TSEX char(2) NOT NULL

11、default '男' check(TSEX='男' or TSEX='女'),ZC char(10) NOT NULL,MAJOR char(20) NOT NULL)insert into TEACHERvalues ('1','','男','博士','')insert into TEACHERvalues ('2','','女','博士','')insert into TEACHER

12、values ('3','','男','博士','')insert into TEACHERvalues ('4','','女','博士','')insert into TEACHERvalues ('5','','男','博士','')5.新建课程表Create table COURSE(ID int NOT NULL primary key,NAME c

13、har(10) NOT NULL,TYPE char(10) NOT NULL,GRADE int NOT NULL,PREOID int(10),);insert into COURSE values ('1','','必修课','3','40',)insert into COURSE values ('2','','选修课','2','30',)insert into COURSE values ('3','

14、','必修课','3','40','JD201')insert into COURSE values ('4','','选修课','2','30')insert into COURSE values ('5','','选修课','2','30')insert into COURSE select *from COURSE6.新建选课表Create table XK(

15、ID int,SID int,GRADE Int,Primary key(ID,SID),Foreign key(SID)references STUDENT (SID),Foreign key(ID)references COURSE(ID)insert into XKvalues ('1','2','80')insert into XKvalues ('2','3','85')insert into XKvalues ('3','4','79')i

16、nsert into XKvalues ('4','20','86')insert into XKvalues ('5','201','88')select *from XK7.新建讲授表Create table JS(ID int,TID int,TTIME datatime,Primary key(ID,TID),)insert into JSvalues ('1','1','2016-09-01 08:00:00.000')insert into

17、 JSvalues ('2','2','2016-09-05 00:00:00.000')insert into JSvalues ('3','3','2016-10-01 00:00:00.000')insert into JSvalues ('4','4','2016-09-01 00:00:00.000')insert into JSvalues ('5','5','2016-09-01 00:00:00.

18、000')select *from JS5.2主要查询功能sql语句1 登陆管理利用用户和密码登陆检验用户名和密码是否存在和正确select *from register where userSID='abc' and password2='123456'2 学生信息管理1)删除学生信息delete from STUDENT where SID =''2)修改学生信息update STUDENT set SID = '', stucollege = '', NAME = '',SEX = &

19、#39;', stubirth ='', AGE = '', MAJOR ='', YX = ''where snum = ''3)增加学生信息insert into STUDENT values ('','','','','','','','')3 课程管理1)增加课程insert into COURSE values ('',' ','&

20、#39;,' ',' ','','','')2)课程修改update COURSE set ID ='' ,NAME='',CTEACHER='',TYPE='',GRADE='',PREOID='',Chours='',Ccredit='' where ID = ''4 查询管理1)学生查询(1)按学号查询select * from STUDENT where SID =

21、''(2)按姓名查询select * from STUDENT where NAME=''(3)按性别查询select * from STUDENT where SEX=''(4)按专业查询select * from STUDENT where MAJOR=''2)课程查询(1)按课程号查询select * from XK,COURSE where XK.SID ='' and XK.ID = COURSE.ID(2)按授课教师查询select * from XK, TEACHERwhere XK. GRADE =

22、'' and TEACHER.TID=''3)成绩查询select * from XK,COURSE,STUDENT where XK.SID ='' and XK.ID = COURSE.ID and XK.SID = STUDENT.SID5.3选课系统设计要求内容(1) 在选课数据库中,统计出选修课程超过门以上的学生信息。select *from STUDENTwhere STUDENT.SID=(select SIDfrom XKgroup by SID having count(SID)!<4)(2) 检索出成绩及格的、姓王的女同

23、学信息。select * from STUDENTwhere STUDENT.SID in(select XK.SIDfrom XKwhere XK.GRADE!<60 and STUDENT.NAME like'王%' and STUDENT.SEX='女')(3) 统计出平均分在80分以上的学生的信息,并将结果按平均分升序排列。select SID,avg(GRADE)as 平均分 into #avgt from XK group by SID having avg(GRADE)>=80select STUDENT.*,平均分 from STUDENT join #avgt on STUDENT.SID=#avgt.SIDorder by 平均分 asc(4) 统计出至少有三名学生选修的课程的平均分,统计项包含课

温馨提示

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

评论

0/150

提交评论