学生成绩管理系统数据库设计_第1页
学生成绩管理系统数据库设计_第2页
学生成绩管理系统数据库设计_第3页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

线线订线线订订装装上上(2012——2013学年第二学期)指导指导老师签名年月日2。数据流图23。数据字典1名字:教学系别名:院系描述:学校的所有院系定义:教学系表=系编号+系名称主键:系编号,系名称别名:指导指导老师签名年月日2。数据流图23。数据字典1名字:教学系别名:院系描述:学校的所有院系定义:教学系表=系编号+系名称主键:系编号,系名称别名:个院系定义:系编号=char(15)系名称=char(20)位置:教学系表、专业表2名字:专业别名:描述:某一院系的所有专业编号主键:专业编号,专业名称别名:描述:唯一地标识专业表中的一个专业定义:专业编号=char(15)专业名称=char(20)位置:专业表,班级表数据库 学生成绩管理系统数据库设计与操作 4 设计型线线 实验报告内(包:1.实验目的要求实验原理或实验方案主要使用仪器设备材料或软件4。方法步骤。实验数据及处理结论分析)一.实验目的1、掌握需求分析的方法.2、掌握数据库概念结构设计方法。3、掌握数据库逻辑结构设计方法。4、掌握数据库物理结构设计方法。5、掌握在SQLServer2000下数据定义、数据查询、数据更新、数据控制的实现.订二.实验要求订 1、对系统进行需求分析。2、设计数据库的概念结构.3、设计数据库的逻辑结构。4、设计数据库的物理结构.5、建立数据库、录入数据,并做指定的数据操作.三.实验内容1.全局E—R图图1学生成绩管理系统全局E-R图装装下下陕西理工学院实验报告陕西名字:班级别名:

院(系) 专业班级 学号 学生姓名表7选修课数据字典名字:选修别名:描述:记录某一学生选修了某些课程定义:选修表=学号+课程号+成绩表7选修课数据字典名字:选修别名:描述:记录某一学生选修了某些课程定义:选修表=学号+课程号+成绩主键:学号,课程号别名:描述:唯一地标识选修表中某一同学选修了某门课程定义:学号=char(15)课程号=char(15)位置:选修表表8必修课数据字典学号名字:必修别名:描述:记录某一学生必修了某些课程定义:必修表=学号+课程号学生姓名+成绩主键:学号,课程号别名:描述:唯一地标识必修表中某一同学必修了某门课程定义:学号=char(15)课程号=char(15)位置:必修表设计数据库的逻辑结构教学系(系编号char(15),系名称char(20)).专业(专业编号char(15),专业名称char(20),系编号char(15))。班级(班级编号char(15),班级名称char(20),专业编号char(15))。学生(学号char(15),姓名char(10),性别char(5),年龄int,班级编号char(15))。选修课(课程号char(15),课程名char(20),学时int,学分float,开课学期char(20))。必修课(课程号char(15),课程名char(20),学时int,学分float,开课学期char(20))。选修(学号char(15),课程号char(15),成绩float)。必修(学号char(15),课程号char(15),成绩float)。表间关系主键:班级编号,班级名称别名:理工 描述:某一专业的所有班级定义:班级表=班级编号+班级名称+专

描述:唯一地标识班级表中的一个班级业编号 定义:班级编=char(15)线 线 班级名=char(20)位置:班级表,学生表实验 表4学生数据字典线 线名字:学生 主键:学号报告 别名: 别名:描述:在校的学生 描述:唯一地标识学生表中的一个定义学生=学+姓+性别年+ 学生订 订 班级编号 院(系) 定char(15)位置:学生表,选修表,必修表订 订 表5选修课数据字典名字:选修课 主键:课程号别名: 别名:描述:某一院系开设的选修课程 描述:唯一地标识选修课表中的装 装 定义选修课课程+课程+学时 门选修课+学分开课学期 定义:课程=char(15)装 装表6必修课数据字典名字:必修课主键:课程号表9表间关系一览表别名:别名:关系名主键表外键表列规范上下描述:某一院系开设的必修课程描述:唯一地标识必修课表中的一FK_专业_教学系教学系专业教学系.系编号=专业。系编号定义:必修课表=课程号+课程名+学时门选修课FK_班级_专业专业班级专业。专业编号=班级.专业编号+学分+开课学期定义:课程号=char(15)FK_学生_班级班级学生班级.班级编号=学生。班级编号位置:必修课表,必修表FK_选修_学生学生选修学生。学号=选修。学号上下FK_选修_选修课选修课选修选修课。课程号=选修.课程号FK_必修_学生学生必修学生.学号=必修。学号FK_必修_必修课必修课必修必修课.课程号=必修.课程号6.建立数据库建立数据库代码如下:createdatabase学生成绩系统go6.建立数据库建立数据库代码如下:createdatabase学生成绩系统gouse学生成绩系统createtable教学系(系编号char(15)NOTNULLUNIQUE,系名称char(20)NOTNULLUNIQUE,constraint教学系pkprimarykey(系编号,系名称))createtable专业(专业编号char(15)NOTNULLUNIQUE,专业名称char(20)NOTNULLUNIQUE,系编号char(15)NOTNULL,constraint专业pkprimarykey(专业编号,专业名称),constraintFKfri)nke(系编号)rfrnes)createtable班级(班级编号char(15)NOTNULLUNIQUE,班级名称char(20)NOTNULLUNIQUE,专业编号char(15)NOTNULL,constraint班级pkprimarykey(班级编号,班级名称),constraintFK_班级_专业foreignkey(专业编号)references专业(专业编号))createtable选修课(课程号char(15)NOTNULLUNIQUE,课程名char(20)NOTNULL,学时int,学分float,开课学期char(20),constraint选修课pkprimarykey(课程号),constraint选修课_学时ckcheck(学时〉0),constraint选修课_学分ckcheck(学分>0))createtable必修课(课程号char(15)NOTNULLUNIQUE,课程名char(20)NOTNULL,学时int,学分float,开课学期char(20),constraint必修课pkprimarykey(课程号),constraint必修课_学时ckcheck(学时>0),constraint必修课_学分ckcheck(学分>0))createtable学生(学号char(15)NOTNULLUNIQUE,姓名char(10)NOTNULL,性别char(5),年龄int,班级编号char(15),constraint学生pkprimarykey(学号),constraint性别ckcheck(性别='男'or性别='女’),学号constraintck>0AND<150),constraintFK_学生_班级foreignkey(班级编号)references班级(班级编号))createtable选修(学号char(15)NOTNULL,课程号char(15)NOTNULL,成绩float,constraint选修pkprimarykey(学号,课程号),constraint选修_成绩ckcheck(成绩>=0AND成绩<=100),constraintFK_选修_学生foreignkey(学号)references学生(学号),constraintFK_选修_选修课foreignkey(课程号)references选修课(课程号))7。建立视图成绩、学分绩点。理工学院实验报告8。录入数据向教学系表录入数据insertinto教学系values(’01’,’数学与计算机科学学院’)图3增加院系后教学系表结果向专业表中录入数据8。录入数据向教学系表录入数据insertinto教学系values(’01’,’数学与计算机科学学院’)图3增加院系后教学系表结果向专业表中录入数据insertinto专业values('08','计算机科学与技术’,’01')图4增加专业后专业表结果向班级表中录入数据insertinto班级values('058’,’计本101’,'08’)insertinto班级values(’059’,'计本102','08')insertinto班级values(’060','计本103’,’08’)图5增加班级后班级表结果向学生表中添加信息insertinto学生values(’10101’,’李丽’,'女',19,'059')insertinto学生values('10102','王凡','男’,20,'059')insertinto学生values('10103’,’张希’,’男’,21,’059')insertinto学生values('10104’,’张华','女',19,'059')insertinto学生values(’10105’,’高峰’,’男',20,'059')学号 学生姓名 图6增加学生信息后学生表结果代码如下createview学生必修课成绩(学号,姓名,班级,课程名,成绩,学分绩点)西 ASselect必修。学号,姓名,班级=(select班级名称from班级where班级编号=学生。班级编号),理工 课程名,成绩,学分绩=casewhen成绩>=90then学分*4学院 when成绩<90and成>=85then学分*3.5when成绩〈85and成绩〉=80then学分*3线 线 when成绩<80and成绩=75then学分。5实验 when成绩75and成绩=70then学分*2when成<70and成绩=65then学分when成绩<65and成绩〉=60then学分*1报告 when成<60then学endfrom学生,必修课,必修whereand课程号视图订 订 代码如下createview学生选修课成绩(学号,姓名,班级,课程名,成绩,学分绩点)ASselect选修。学号,姓名,班级=(select班级名称from班级where班级编号=学生。班级编号),课程名,成绩,学分绩点=casewhen成绩〉=90then学分*4when成绩〈90and成绩>=85then学分*3.5装 装 when成绩<85and成绩=80then学分*3when成绩80and成绩=75then学when成绩<75and成>=70then学分when70and=65thenwhen成绩<65and=60then1when60then*0endfrom学生,选修课,选修where学生.学号=选修.学号and选修课.课程号=选修.课程号上 下102

陕 insertinto选修课values('03’,'西部文化概',15,2,'大三上学')insertinto必修课values(’001',’数据库',40,4,'大三上学期’)insertinto必修课values('002',30,3)西 insertinto必修课values(’003',’计算机组成原理大三上学期insertinto必修课values(’004’,’人工智',20,2,'大三上学')insertinto必修课values(’005’,'计算机图形学',20,2,'大三上学期’)

insertinto选修课values('04’,'西部地理',15,2,'大三上学期’)insertinto选修课values(’05','大学生心理健康',15,2,'大三上学期’)图9增加选修课后选修课表结果(7)向必修表中插入成绩update必修set成绩=89where学号=’10101’and课程号=’001'理工insertinto必修

update必修set成绩=78where学号=’10101'and课程号=’002’select学号,课程号,0from学生,必修课

update必修set成绩=80where学号=’10101’and课程号=’003’update必修set成绩=65where学号='10101’and课程号='004’学院 where学in(select学

update必修set成绩=66where学号='10101'and课程号='005’线 线 102'))

from学生where班级编号=(select班级编号from班级where班级名称='计本

update必修set成绩=77where学号=’10102'and课程号=’001’update必修set成绩=78where学号=’10102’and课程号='002’实验 图7增加必修课后必修课表结

update必修set成绩=66where学号=’10102’and课程号='003'

8

update必修set成绩=90where学号=’10102’and课程号=’004'update必修set成绩=85where学号=’10102'and课程号=’005'报告 insertinto选修values(’01’,’食品营养',15,2,'大三上学

update必修set成绩=88where学号='10103'and课程号='001’insertinto选修课values(’02’,'中国近现代史文化精要’,15,2,’大三上学期’)院(系) 专业班级

update必修set成绩=70where=’10103'and课程号=’002'update必修set成绩=54where学号='10103’and课程号date必修set成绩=89号='10103’and课程号='004’update必修set成绩=90where学号=’10103’and课程号='005'订 订update必修set成绩=90where学号=’10104’and课程号=’001'update必修set成绩=85where学号=’10104’and课程号=’002’update必修set成绩=82where学号=’10104’and课程号='003'update必修set成绩=74where学号=’10104'and课程号=’004'update必修set成绩=61where学号=’10104'and课程号='005'update必修set成绩=54where学号='10105’and课程号='001’update必修set成绩=82where学号=’10105'and课程号='002’update必修set成绩=92where学号=’10105’and课程号update必修set成绩=75where学号=’10105’and课程号装 装 update必set成=60where学号='10105’and课程号=’005'上 下图11向必修表中插入成绩后学生必修课成绩视图结果(8)向选修表中选课信息和成绩insertinto选修values('10101','01’,88)insertinto选修values('10102’,'02',90)insertinto选修values('10103',’01',85)insertinto选修values('10104','03',78)insertinto选修values('10105','04',80)insertinto选修values(’10103’,'05',89)图12向选修表中插入选课信息和成绩后选修表结果图13向选修表中插入选课信息和成绩后选修课成绩视图结果9.数据查询(1)给定学号,按学号查询指定学生的基本信息。查询学号为“10101”的学生的基本信息图11向必修表中插入成绩后学生必修课成绩视图结果(8)向选修表中选课信息和成绩insertinto选修values('10101','01’,88)insertinto选修values('10102’,'02',90)insertinto选修values('10103',’01',85)insertinto选修values('10104','03',78)insertinto选修values('10105','04',80)insertinto选修values(’10103’,'05',89)图12向选修表中插入选课信息和成绩后选修表结果图13向选修表中插入选课信息和成绩后选修课成绩视图结果9.数据查询(1)给定学号,按学号查询指定学生的基本信息。查询学号为“10101”的学生的基本信息select*from学生where学号=’10101’图14查询学号为“10101”的学生的基本信息结果学号学生姓名西理工学院线 实验报告线 院(系) 专业班级订 订装 装上 下图20查询课程名为“西部地理”的必修课的基本信息结果(5)给定学号和课程名,按学号和课程号查询指定学生所修指定课程的成绩和学分绩点。查询学号为“10101”的学生选修“数据库"这门必修课的成绩和学分绩点select成绩,学分绩点from学生必修课成绩where学号=’10101'and课程名='数据库’图20查询课程名为“西部地理”的必修课的基本信息结果(5)给定学号和课程名,按学号和课程号查询指定学生所修指定课程的成绩和学分绩点。查询学号为“10101”的学生选修“数据库"这门必修课的成绩和学分绩点select成绩,学分绩点from学生必修课成绩where学号=’10101'and课程名='数据库’图21查询学号为“10101”的学生选修“数据库”这门必修课的成绩和学分绩点结果查询学号为“10101”的学生选修“食品营养学”这门选修课的成绩和学分绩点select成绩,学分绩点from学生选修课成绩where学号=’10101'and课程名='食品营养学'图22查询学号为“10101”的学生选修“食品营养学”这门选修课的成绩和学分绩点结果(6)给定学号,按学号查询指定学生所修全部课程的课程名、成绩和学分绩点。要求使用所建立的“学生成绩”视图.查询学号为“10101”的学生所有必修课的课程名、成绩和学分绩点select课程名,成绩,学分绩点from学生必修课成绩here学号=’10101'学生姓名图23查询学号为“10101"的学生所有必修课的课程名、成绩和学分绩点结果查询学号为“10103"的学生所选选修课的课程名、成绩和学分绩点select课程名,成绩,学分绩点from学生选修课成绩where学号=’10103’查询姓名为“高峰”的学生的基本信息图15查询姓名为“高峰”的学生的基本信息结果西 查询姓名第一个字为“张”的学生的基本信息select*from学生where姓名like张图16查询姓名第一个字为“张”的学生的基本信息结果理工(3)给定课程号,按课程号查询指定课程的基本信息。查询课程号为“001”的必修课的课程的基本信息学院select*from必修课where='001'图17查询课程号为“001”的必修课的课程的基本信息结果线 线 查询课程号为的选修课的课程的基本信息实验select*fromwhere='01’图18查询课程号为“01”的选修课的课程的基本信息结果(4)给定课程名,按课程名查询指定课程的基本信息.报告 查询课程名为“计算机组成原理”的必修课的基本信息select*from必修课where课程='计算机组成原图19查询课程名为“计算机组成原理”的必修课的基本信息结果的基本信息select*from选修课where订 订装 装上 下

专业班级求每个学生选修课的学分绩点的总和和平均学分绩点select学分绩点)总学分绩点,avg(学分绩点)fromgroup求每个学生选修课的学分绩点的总和和平均学分绩点select学分绩点)总学分绩点,avg(学分绩点)fromgroupby学号,姓名图28求每个学生选修课的学分绩点的总和和平均学分绩点结果10。数据更新(1)插入一个学生的基本信息。insertinto学生values('10106','黄岑','男’,20,'058’)图29插入一个学生的基本信息结果(2)插入一门课程的基本信息。插入一门必修课信息insertinto必修课values(’006’,’算法设计',20,2,’大三上学期')insertinto必修select学号from学生where学号in(select学号from学where级编=(select班级编from班级where班级名='计102’))图30插入一门必修课信息必修课表结果学号学生姓名(7)给定班级和课程名,按班级和课程号查询指定班级所有学生选修指定课程的成绩,查询结果以学号、姓名、成绩、学分绩点的形式显示。要求使用所建立的“学生成绩”视图.西 查询计本102班选修课程号为这门必修课的所有学生的学号、姓名、成绩、学分绩select学号姓名,成绩,学分绩点from学生必修课成绩理工whereand=(select课程名from必修课where='001')图25查询计本102班选修课程号为“001"这门必修课的所有学生的学号、姓名、成绩、学分绩点结果查询计本102班选修课程号为“01"这门选修课的所有学生的学号、姓名、成绩、学分绩点学院selectfrom学生选修课成绩线 线 where班='计'and课程=(select课程名from选修课where课程='01')实验图26查询计本102班选修课程号为“01”这门选修课的所有学生的学号、姓名、成绩、学分绩点结果报告(8)求每个学生的学分绩点的总和和平均学分绩点.求每个学生必修课的学分绩点的总和和平均学分绩点报告select学姓名学分绩)总学分绩,avg(学分绩点)平均学分绩from学生必修课成绩 groupby学号,姓名图27求每个学生必修课的学分绩点的总和和平均学分绩点结果院(系) 专业班级订 订装 装上 下(3)插入一个学生某一门课的成绩.

31果图33将学号为“10101”的学生班级改为计本“101”后学生表结果(5)给定课程号,按课程号修改指定课程的基本信息。图33将学号为“10101”的学生班级改为计本“101”后学生表结果(5)给定课程号,按课程号修改指定课程的基本信息。60updateset=60=5where课程号=’001'图34将课程号为“001”的必修课程课时改

温馨提示

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

评论

0/150

提交评论