SQLSERVER高校信息管理系统_第1页
SQLSERVER高校信息管理系统_第2页
SQLSERVER高校信息管理系统_第3页
SQLSERVER高校信息管理系统_第4页
SQLSERVER高校信息管理系统_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

高校信息管理系统

数据库设计问题描述北京某高校拟开发一套高校信息管理系统,该系统包括学生档案管理、学生成绩管理、教员信息管理、教务排课等模块,实现学生档案录入、修改、查询,成绩录入、修改、查询,教务排课管理等功能。开发此模块涉及两大部分:后台数据库的设计前端界面的开发(后期我们可以用Java开发)为了简化起见,我们暂讨论“学生成绩管理”子模块,该模块具有成绩输入,成绩查询,名次排序,分数统计等功能。现要求对“学生成绩管理”子模块进行数据库的设计并实现,数据库保存在D:\project目录下,文件增长率为15%。2问题分析-1字段名称数据类型说明stuName字符学生姓名,该列必填,要考虑姓氏可能是两个字的,如欧阳俊雄stuNo字符学号,该列必填,学号不能重复,且必须是S253XX格式stuSex字符学生性别,该列必填,且只能是“男”或“女”。因为男生较多,默认为“男”stuAge数字学生年龄,该列必填,必须在15~50岁之间stuSeat数字学生的座位号,该列必填,不用人工输入,采用自动编号方式,且必须是1~30号stuAddress文本学生地址,该列可不填,如没有填写,默认为“地址不详”与考试相关的学生信息表(stuInfo)如下:3问题分析-2与成绩相关的学生成绩表(stuMarks)如下:字段名称数据类型说明examNo字符考号,该列必填,且不能重复,必须是E200507XXXX格式stuNo字符学号,该列必填,且必须在学生基本信息表中有相关记录writtenExam数字学生笔试成绩,数据必须是0~100分之间,不填默认为0分labExam数字学生笔试成绩,数据必须是0~100之间,不填默认为0分4难点分析-1字段名称数据类型说明stuName字符学生姓名,该列必填,要考虑姓氏可能是两个字的,如欧阳俊雄stuNo字符学号,该列必填,学号不能重复,且必须是s253XX格式stuSex字符学生性别,该列必填,且只能是“男”或“女”。因为男生较多,默认为“男”stuAge数字学生年龄,该列必填,必须在15~50岁之间stuSeat数字学生的座位号,该列必填,不用人工输入,采用自动编号方式,且必须是1~30号stuAddress文本学生地址,该列可不填,如没有填写,默认为“地址不详”分析学生信息表(stuInfo)每列的约束非空/必填约束默认约束标识列主键约束Check约束:stuNolike‘s253[0-9][0-9]’5难点分析-2分析学生成绩表(stuMarks)每列的约束:字段名称数据类型说明examNo字符考号,该列必填,且不能重复,必须是E200507XXXX格式stuNo字符学号,该列必填,且必须在学生基本信息表中有相关记录writtenExam数字学生笔试成绩,数据必须是0~100分之间,不填默认为0分labExam数字学生笔试成绩,数据必须是0~100之间,不填默认为0分Check约束:writtenExambetween0and1006阶段划分第一阶段(50分钟):利用企业管理器实现建库、建表、加约束、建关系第二阶段(50分钟):利用SQL查询分析器实现插入测试数据、查询数据、修改数据第三阶段(50分钟):利用企业管理器实现创建登录帐号、导出数据、导出脚本、分离数据库7第一阶段第一阶段(50分钟):利用企业管理器实现建库;建表;加约束;建关系;要求学员自己动手操作,教员巡视,解答学员提出的问题8阶段检查针对第一阶段抽查学员的操作结果教员给出点评或集中演示难点部分9 第一阶段结果演示1第一阶段操作的结果:10第一阶段结结果演示-2第一阶段操操作的结果果:11第一阶段结结果演示-3第一阶段操操作的结果果:12第二阶段第二阶段((50分钟钟):利用用SQL查查询分析器器实现插入测试数数据;查询数据;;修改数据;;要求学员自自己动手编编写SQL语句,教教员巡视,,解答学员员提出的问问题13阶段检查针对第二阶阶段抽查学学员的编码码结果教员给出点点评或集中中演示难点点部分14第二阶段标标准代码演演示-1插入数据--向学员员信息表stuInfo插入入数据--INSERTINTOstuInfo(stuName,stuNo,stuSex,stuAge,stuAddress)VALUES('张张秋丽','s25301','男',18,'北京海海淀')INSERTINTOstuInfo(stuName,stuNo,stuSex,stuAge,stuAddress)VALUES('李李斯文','s25303','女',22,'河南洛洛阳')INSERTINTOstuInfo(stuName,stuNo,stuSex,stuAge)VALUES('李李文才','s25302','男',31)INSERTINTOstuInfo(stuName,stuNo,stuSex,stuAge,stuAddress)VALUES('欧欧阳俊雄','s25304','男男',28,'新疆疆威武哈')15第二阶段标准准代码演示-2第二阶段的编编码结果:--向学员成成绩表stuMarks插入数据--INSERTINTOstuMarks(ExamNo,stuNo,writtenExam,LabExam)VALUES('E2005070001','s25301',80,58)INSERTINTOstuMarks(ExamNo,stuNo,writtenExam)VALUES('E2005070002','s25302',50)INSERTINTOstuMarks(ExamNo,stuNo,writtenExam,LabExam)VALUES('E2005070003','s25303',97,82)--查看数据据--select*fromstuInfoselect*fromstuMarks插入数据16--1.查询询两表的数据据--select*fromstuInfoselect*fromstuMarks第二阶段标准准代码演示-1查询数据--2.查询询男学员名单单--select*fromstuInfowherestuSex='男'--3.查询询笔试成绩优优秀的学员情情况(成绩在在75~100之间)--selectstuNo,writtenExamfromstuMarkswherewrittenExambetween75and100--4.查询询参加本次考考试的学员成成绩,包括学学员姓名,笔笔试成绩,机机试成绩--selectstuName,writtenExam,labExamfromstuInfoinnerjoinstuMarksonstuInfo.stuNo=stuMarks.stuNo--5.统计计笔试考试平平均分和机试试考试平均分分--selectavg(writtenExam)as'笔试考考平均分',avg(labexam)as'机试平均均分'fromstuMarks--6.统计计参加本次考考试的学员人人数selectcount(stuNo)as考试人人数fromstuMarks--7.查询询没有通过考考试的人数((笔试或机试试小于60分分)--selectcount(stuNo)as未通过过的人数fromstuMarkswherelabExam<60orwrittenExam<6017--10.排排名次(按平平均分从高到到低排序),显示姓名,笔试成绩,机试成绩,平均分-selectstuNameas姓名,writtenExamas笔笔试,labExamas机机试,(writtenExam+labExam)/2.0as平均均分fromstuInfoinnerjoinstuMarksonstuInfo.stuNo=stuMarks.stuNoorderby平均均分desc--11.根根据平均分,显示前两名名信息,包括括姓名、笔试试成绩、机试试成绩、平均均分-selecttop2stuNameas姓名名,writtenExamas笔试,labExamas机机试,(writtenExam+labExam)/2.0as平均分分fromstuInfoinnerjoinstuMarksonstuInfo.stuNo=stuMarks.stuNoorderby平均均分desc第二阶段标准准代码演示-1第二阶段的编编码结果:--8.查询询学员成绩,,显示学号,,笔试成绩,,机试成绩,,平均分--selectstuNOas学学号,writtenExamas笔试试,labExamas机试,(writtenExam+labExam)/2.0as平均均分fromstuMarks--9.排名名次(按平均均分从高到低低排序),显显示学号、平平均分--selectstuNOas学学号,(writtenExam+labExam)/2.0as平均分分fromstuMarksorderby平均分分desc18第二阶段标准准代码演示-1修改数据--都提5分分--updatestuMarkssetwrittenExam=writtenExam+5select*fromstuMarks--100分封封顶顶((加加分分后后超超过过100分的的,,按按100分计计算算))--updatestuMarkssetwrittenExam=100wherewrittenExam>100--查看看修修改改后后的的数数据据--select*fromstuMarks19第三三阶阶段段第三三阶阶段段((50分分钟钟))::利利用用企企业业管管理理器器实实现现创建建登登录录帐帐号号;;导出出数数据据;;导出出脚脚本本;;分离离数数据据库库;;要求求学学员员自自己己动动手手操操作作,,教教员员巡巡视视,,解解答答学学员员提提出出的的问问题题20阶段检查针对第三阶阶段抽查学学员的编码码结果抽查学员编编写的完整整代码,要要求学员上上台讲解,,并演示运运行结果教员给出点点评21第三阶段标标准代码演演示-1第三阶段的的编码结果果:创建登录帐帐号22第三阶段标标准代码演演示-2第三阶段的的编码结果果:创建数据库库用户权限23总结通过本次项项目案例练练习了利用企业管管理器进行行常用的数数据库操作作编写SQL语句执行行增、删、、改、查操操作巩固的知识识点数据库的常常用操作::建库、建建表、加约约束、建关关系常用的约束束类型:主主键、外键键、非空、、默认值、、检查约束束insert语句句:Insertinto表表名(字段段1,字段段2,...)values(值值1,值值2,…)upda

温馨提示

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

评论

0/150

提交评论