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

下载本文档

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

文档简介

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

2、和密码表 .- 8 -3.新建学生表 .- 9 -4.新建教师表 .-10-5.新建课程表 .-11-6.新建选课表 .-12-7.新建讲授表 .-13-5.2主要查询功能 sql 语句 .-14-.专业 .专注.1登陆管理 .-14-2学生信息管理 .-14-3课程管理 .-14-4查询管理 .-15-5.3 选课系统设计要求内容 .-16-第六章心得体会 .-19-.专业 .专注.第一章设计内容与目标1.1 设计内容我设计的是学生选课管理系统,选课管理系统是学校教务系统中很庞大、很复杂的一个数据库系统 ,在这里我将其简化 ,只粗略的列举了比较直观的关系模式。此系统涉及学生信息 、教师信息

3、、课程信息 、选课信息 、还有成绩管理及查询。1.2 设计目标所实现的功能有 :能记录、学生、教师以及课程的基本情况,能记录学生所选的课程以及相应的成绩和授课教师。为了简化 ,每个教师最多教授一门课程,每个学生最多可选一门课程或者不选,每个学生选修的每门课程有一个成绩记载,学生在系统中可以有查询成绩的权限,管理员有修改成绩的权限。第二章需求分析2.1 需求背景随着信息时代科技不断提高,学校规模不断扩大,教学质量不断提高,大学期间有许多选修课 ,以往的选修课方法是课堂报名或者纸上填写方式报名,这种方法虽然直接,但是造成选课的盲目性 ,而且学生选过课程后不好在更改查看,一方面浪费大量的人力,物力资

4、源 ,另一方面浪费时间以及在认为统计过程中不可避免的出现差错的情况。这给广大的老师和学生带来诸多的不便 ,管理起来也相当困难。使用网上选课系统可以提前进行网上选课,并且选课以后学生.专业 .专注.还可以在查看和更改,随意选择各个老师的课程,老师管理起来也比较方便。鉴于它的重要性,这就迫切需要研制开发一款功能强大,操作简单 ,具有人性化的网上选课系统。.专业 .专注.2.2 选课分析根据分析 ,本系统的实体有学生 、教师、课程和选课信息 。描述学生的属性有 :学号、姓名、性别、年龄、专业。描述教师的属性有 :教师编号 、姓名、性别、职称、专业。描述课程的属性有 :课程编号 、课程名称 、课程类型

5、 、学时、学分。描述选课信息的属性有 :学号、课程编号 、考试成绩 。每个学生只能属于一个院系,每个学生最多可选一门课程或者不选,每个教师教授最多一门课程 。学生进入查询系统后只能有查询功能,管理员进入则可以有修改成绩的权限。用户登录时需要有一个用户名和密码。第三章概要设计3.1 各属性 E-R 图学生学号姓名性别年龄专业教师.专业 .专注.教师编姓名性别职称专业号课程课 程 编课程名称课 程 类学时学分号型登录用户名密码选课.专业 .专注.学号课程编号号成绩3.2 总 E-R 图数据库的 E-R 图:学号学生姓名m性别教师编号 姓名 性别 职称 专业选课n年龄nm课程讲授教师专业课程编号课程

6、名称课程类型上课时间学时学分第四章逻辑设计及规范化4.1关系模型登陆(用户名、密码).专业 .专注.学生(学号、姓名、性别、年龄、专业、班级)教师(教师编号 、姓名、性别、职称、专业)课程(课程编号 、课程名称 、课程类型 、学时、学分)选课信息 (学号、课程编号 、考试成绩 )4.2 关系数据表Register属性名数据类型可否为空含义完整性约束条件UserSIDChar(10)否用户名passwordChar(10)否密码STUDENT属性名数据类型可否为空含义完整性约束SIDint否学号主码SIDchar(10)否姓名SEXchar(2)是性别AGEInt是年龄MAJORchar(20)

7、是专业YXchar(10)是已选TEACHER.专业 .专注.属性名数据类型可否为空含义完整性约束TIDint否教师编号主码TSIDchar(10)否姓名TSEXchar(2)否性别ZCchar(10)否职称MAJORchar(20)否专业COURSE属性名数据类型可否为空含义完整性约束IDInt否课程编号主码SIDchar(10)否课程名称TYPEchar(10)否课程类型GRADEInt可以学分PEROIDInt可以学时XK属性名数据类型可否为空含义完整性约束SIDint否学号IDint否课程编号主码.专业 .专注.GRADEint是成绩JS属性名数据类型可否为空含义完整性约束IDint否

8、课程编号TIDint否教师编号主码TTIMEdatetime是上课时间第五章数据库对象设计5.1 SQL 物理结构设计1.新建数据库CreatedatabaseSCdatabase2.新建用户名和密码表Createtable register(userSIDchar (10),password2char (10 );.专业 .专注.3.新建学生表CreatetableSTUDENT(SID intNOTNULL primary key,NAMEchar (10 ) NOTNULL,SEX char (2)NOTNULLdefault 男 check (SEX= 男 or SEX= 女 ),AG

9、E intNOT NULL,MAJORchar (20)NOT NULL,YX char (10)NOTNULL,)insertintoSTUDENTvalues(2014213108,男 ,21 , ,)insertintoSTUDENTvalues(2014213113,男 ,21 , ,)insertintoSTUDENTvalues(2014213138,女 ,23 , ,)insertintoSTUDENTvalues(2014213141,男 ,22 , ,)insertintoSTUDENTvalues(2014213149,男 ,22 , ,)insertintoSTUDENT

10、.专业 .专注.4.新建教师表CreatetableTEACHER(TID intNOTNULL primarykey ,TNAMEchar (10 ) NOT NULL,TSEXchar (2) NOT NULLdefault 男 check (TSEX= 男 or TSEX= 女 ),ZC char (10) NOT NULL,MAJORchar (20 ) NOT NULL)insertinto TEACHERvalues (1 , ,男 ,博士 ,)insertinto TEACHERvalues (2 , ,女 ,博士 ,)insertinto TEACHERvalues (3 ,

11、,男 ,博士 ,)insertinto TEACHERvalues (4 , ,女 ,博士 ,)insertinto TEACHERvalues (5 , ,男 ,博士 ,).专业 .专注.5.新建课程表Createtable COURSE(ID int NOT NULL primarykey ,NAMEchar (10 ) NOT NULL,TYPE char (10 ) NOT NULL,GRADE int NOT NULL,PREOID int (10 ),);insertintoCOURSEvalues (1 , ,必修课 ,3 ,40 ,)insertintoCOURSEvalues

12、 (2 , ,选修课 ,2 ,30 ,)insertintoCOURSEvalues (3 , ,必修课 ,3 ,40 ,JD201 )insertintoCOURSEvalues (4 , ,选修课 ,2 ,30 )insertintoCOURSEvalues (5 , ,选修课 ,2 ,30 )insertintoCOURSEselect *from COURSE.专业 .专注.6.新建选课表CreatetableXK(ID int ,SID int ,GRADE Int ,Primarykey (ID ,SID ),Foreignkey (SID)referencesSTUDENT(SI

13、D),Foreignkey (ID )referencesCOURSE (ID)insertintoXKvalues(1 ,2 ,80 )insertintoXKvalues(2 ,3 ,85 )insertintoXKvalues(3 ,4 ,79 )insertintoXKvalues(4 ,20 ,86 )insertintoXKvalues(5 ,201 ,88 ).专业 .专注.select *from XK7.新建讲授表CreatetableJS(ID int ,TID int ,TTIME datatime ,Primarykey (ID ,TID ),)insertintoJS

14、values(1 ,1 ,2016-09-01 08:00:00.000)insertintoJSvalues(2 ,2 ,2016-09-05 00:00:00.000)insertintoJSvalues(3 ,3 ,2016-10-01 00:00:00.000)insertintoJSvalues(4 ,4 ,2016-09-01 00:00:00.000)insertintoJSvalues(5 ,5 ,2016-09-01 00:00:00.000).专业 .专注.select *from JS5.2 主要查询功能sql 语句1 登陆管理利用用户和密码登陆检验用户名和密码是否存在和

15、正确select *fromregisterwhereuserSID = abcand password2= 1234562 学生信息管理1) 删除学生信息deletefromSTUDENT whereSID = 2) 修改学生信息updateSTUDENT set SID = , stucollege= , NAME = ,SEX = ,stubirth= , AGE = , MAJOR = , YX = wheresnum= ;3) 增加学生信息insertintoSTUDENTvalues (, , , , )3 课程管理1) 增加课程.专业 .专注.insertintoCOURSEva

16、lues (, , , , , )2) 课程修改updateCOURSEsetID = ,NAME = ,CTEACHER= ,TYPE= ,GRADE = ,PREOID= ,Chours = ,Ccredit = where ID= 4 查询管理1) 学生查询(1) 按学号查询select * fromSTUDENT whereSID = (2) 按姓名查询select * fromSTUDENT whereNAME = (3) 按性别查询select * fromSTUDENT whereSEX= (4) 按专业查询select * fromSTUDENT whereMAJOR = 2)

17、 课程查询(1) 按课程号查询select * fromXK,COURSEwhereXK.SID = and XK.ID = COURSE.ID.专业 .专注.(2) 按授课教师查询select* fromXK, TEACHERwhereXK. GRADE = and TEACHER.TID = 3) 成绩查询select * fromXK,COURSE,STUDENTwhereXK.SID = and XK.ID = COURSE.IDandXK.SID = STUDENT .SID5.3 选课系统设计要求内容(1 )在选课数据库中,统计出选修课程超过门以上的学生信息。select *fro

18、m STUDENTwhere STUDENT .SID=(select SIDfrom XKgroupby SID havingcount (SID)! 4)(2 )检索出成绩及格的、姓王的女同学信息。select * from STUDENT.专业 .专注.where STUDENT .SID in(select XK .SIDfrom XKwhere XK .GRADE!= 80select STUDENT .*,平均分fromSTUDENTjoin #avgton STUDENT .SID= #avgt .SIDorderby平均分asc(4 )统计出至少有三名学生选修的课程的平均分,统计项包含课程编号和平均分。select ID ,avg (GRADE ) as 平均分 from XKgroupby ID havingcount (SID)= 3.专业 .专注.(5)为每个实体表和关系表创建合适的索引(聚簇索引 、复合索引 )、 主码 、外码CreateuniqueindexSID On STUDENT (SID);CreateuniqueindexID O

温馨提示

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

评论

0/150

提交评论