学生成绩管理系统课程设计说明书(共20页).doc
《学生成绩管理系统课程设计说明书(共20页).doc》由会员分享,可在线阅读,更多相关《学生成绩管理系统课程设计说明书(共20页).doc(20页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上 长 春 大 学 课 程 设 计 说 明 书题目名称 学生成绩管理系统 院(系) 软件学院 班 级 软件工程09403 学生姓名 赵健 吕阳 谷雨卓 刘涛 指导教师 刘 艳 起止日期 2010.07.122010.07.16 目 录一、设计题目1二、设计目的1三、设计分析1四、概念结构设计2五、逻辑结构设计3六、数据库实现5七、结论17专心-专注-专业一、设计题目学生成绩管理系统二、设计目的运用已学过的知识进行一个简单的应用程序的开发。基本掌握设计课题的基本步骤和方法。掌握应用系统开发中的需求分析。基本掌握应用系统开发中设计文档的编制。三、设计分析因为我做的是学生成绩
2、管理,所以数据库中至少有个一个表是来存储学生的各科成绩的。有了学生成绩,得知道这个成绩是哪个学生的,所以此表中也得有学生姓名,但是学生姓名可能有重复的 ,所以得必须有个标志来惟一标识一个学生,所以得给每个学生一个编号(学号),但是也得必须清楚,这个成绩是哪门课程的,所以给课程定义了一个编号。之后,得想到有了学生成绩表,总得有个表来存放学生信息吧,所以又建立一个学生信息表,此表中的必须的字段得有学号、姓名、班级,其他的字段可以根据需要来添加。然后就是得有个课程表来存放哪个教师教哪门课程信息,所以此表中至少得有课程号,课程名称和教师的惟一标识(教师编号),再有一个表来存放教师的信息的,其中的字段必
3、须有教师编号,教师姓名和所在的部门,当然也可以有教师出生日期、职称、电话号码等字段。总之,这个学生管理系统总共包括四个表:学生信息表student、教师信息表teacher、成绩表score和课程表course。Student表:在建表时,除了添加学号、姓名、班级必要字段,还添加一些其他的字段,比如:出生日期、性别、邮箱地址和类型等。Teacher表:在建表时,除了添加教师编号,教师姓名,部门必要字段,还可以添加一些其他的字段,比如:出生日期、性别、和电话等。Score表:此表应该包括学生学号、课程号和成绩等。Course表:应包括课程号,对应的课程名称和教此课程的教师编号。(1)建立一个数据
4、库,然后在此数据库中建立这四个数据表。(2)向表中添加记录。(3)用一些查询语句来查看表中的特定记录。(4)向表中添加一些字段。如:向teacher表中添加字段 tel(5)创建一个自定义数据类型,并修改student表中的某个字段为此数据类型。(6)创建几个视图查询某个班级的学生信息查看每门课程的平均成绩查看选修计算机课程的学生信息查看所有男教师和所有男学生的信息(7)创建几个存储过程显示成绩表中的课程号在课程表中且所任教师性别为男、计算机系的成绩表。显示某学生的学号,姓名,所学课程号,课程名称和对应的成绩。在执行此存储过程时,如果没有给出参数(学生姓名),则输入全部的学生的学号,姓名,班级
5、,任课教师编号及其姓名,所学课程名称和成绩,如果有,则显示此学生的以上信息。(8)创建触发器在成绩表中建立一个触发器,当向表中添加记录时,此学生的成绩都乘以1.2。检查学生的邮箱地址是否相同,如果相同,输出inserting fail,并且回滚事务;如果不相同,则插入成功。在成绩表建立一个触发器,在向表中插入记录时,检验插入的课程号是否在课程表中的课程号的范围之内。(9)创建规则,并绑定在向成绩表中添加记录时,如果成绩degree(select degree from score where sno=101 and cno=02)如图5所示。图5查询记录(2)查询课程号01大于课程号02的最大
6、值、并以分数降序排序的成绩表中所有列select * from score s where o=01 and s.degree=(select max(degree) from score y where o=02 ) order by degree descgo select max(degree) as 02max from score where cno=02如图6所示。 图6查询记录(3)查询性别为男的学号,姓名,班级,课程号和成绩的学生select student.sno,student.sname,student.class,o,score.degree from student,
7、score where student.sno=score.sno and ssex=男如图7所示。图7查询记录(4)查询成绩在60到80之间的所有列select * from score where degree between 60 and 80如图8所示。图8查询记录(5)查询score表中至少有5名学生选修的并以0开头的课程的平均分select avg(degree) as 平均分,cno from score where cno like 0% group by cno having count(*)=5如图9所示。图9查询记录6、创建自定义数据类型创建一个email自定义数据类型e
8、xec sp_addtype email, varchar(20) , null修改student表中的semail数据类型为email类型alter table student alter column semail email7、向表中添加字段向student表添加type,semail,b并且邮件地址有check约束alter table student add type char(7)alter table student add semail varchar(20) null constraint ck_sem check (semail like %) alter table te
9、acher add tel varchar(15)8、创建视图(1)创建所有11班的学生信息的视图create view student11as select * from student where class=11查看视图中的记录select * from student11如图10所示。图10查看视图(2)创建视图course_degree,其中的内容是选修计算机课程的学生信息,包括(sno,sname,cno,cname,degree),创建时加上with check optioncreate view course_degree(sno,sname,cno,cname,degree)
10、as select score.sno,sname,o,cname,degree from course ,student, score where o=o and student.sno=score.sno and cname=计算机with check option查看视图中的记录select * from course_degree如图11所示。图11查看视图(3)创建一个视图,其中的内容是成绩表中每门课程的create view averageas select avg(degree) as 平均分 from score group by cno查看视图中的记录select * fro
11、m average 如图12所示。图12查看视图(4)创建视图其中的内容是所有男教师和男学生的name,sex,birthcreate view manasselect sname as name,ssex as sex,sbirth as birth from student where ssex=男union select tname,tsex,tbirth from teacher where tsex=男查看视图中的记录select * from man如图13所示。图13查看视图9、创建规则规则的作用月CHECK约束的部分功能相同,在向表中的某列插入或更新数据时,用它来限制输入的新值
12、的取值范围。而它与CHECK约束不同的是:l CHECK约束是用CREATE TABLE语句在建表时指定的,而规则需要作为单独的数据库对象来实现。l 在一个列上只能使用一个规则。但可以使用多个CHECK约束。l 规则可以应用于多个列,还可以应用于用户自定义的数据类型,而CHECK约束只能应用于它定义的列。(1)创建一个degree_rule规则create rule degree_rule asvalues0把此规则绑定到score表中degree列exec sp_bindrule degree_rule,score.degree在向成绩表中添加记录时,如果成绩degree0,则插入不成功。(
13、2) 创建一个tel_rule规则create rule tel_rule as value like 0-9 0-9 0-9 0-9 0-9 0-9 0-9 0-9把此规则绑定到teacher表中tel列exec sp_bindrule tel_rule,teacher.tel在向教师表中添加记录时,如果电话号码不是0-9的数字,则插入不成功。10、创建存储过程存储过程是存储在服务器上的例行程序及过程,在SQL SERVER只能感定义某个过程,其中记录了一系列的造作,每次应用程序只需调用该过程就可完成该操作,这种SQL SERVER中定义的过程就被称为存储过程。它可以完成以下功能:l 接受输
14、入参数并返回多个输出值。l 包含T-SQL语句用以完成特定的SQL SERVER操作,其中可以有对其他存储过程的调用。l P返回一个指示成功与否及失败原因的状态代码给调用它的过程。存储过程不能接用过程名返回值,也不能直接在表达式中使用。(1)创建一个存储过程,来显示成绩表中的课程号在课程表中并且所任教师性别为男、所在部门是计算机系的成绩表中的列create proc student_11as select * from score where cno in (select cno from course ,teacher where course.tno=teacher.tno and dep
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 成绩管理系统 课程设计 说明书 20
限制150内