1、SQL 数据库技术课程设计 一、题目:学生成绩管理 二、 因为我做的是学生成绩管理, 所以数据库中至少有个一个表是来存储学生的各课成绩的。 有了学生成绩,得知道这个成绩是哪个学生的,所以此表中也得有学生姓名,但是学生姓名 肯定有重复的 , 所以得必须有个标志来惟一标识一个学生, 所以得给每个学生一个编号 (学 号) ,但是也得必须清楚,这个成绩是哪门课程的,所以给课程定义了一个编号。之后,得 想到有了学生成绩表,总得有个表来存放学生信息吧,所以又建立一个学生信息表,此表中 的必须的字段得有学号、姓名、班级,其他的字段可以根据需要来添加。然后就是得有个课 程表来存放哪个教师教哪门课程信息, 所以
2、此表中至少得有课程号, 课程名称和教师的惟一 标识(教师编号) ,再有一个表来存放教师的信息的,其中的字段必须有教师编号,教师姓 名和所在的部门,当然也可以有教师出生日期、职称、电话号码等字段。 总之,这个学生管理系统总共包括四个表学生信息表 student、教师信息表 t eacher、成绩表 score 和课程表 course。 Student表:在建表时,除了添加学号、姓名、班级必要字段,还添加一些其他的字 段,比如:出生日期、性别、邮箱地址和类型等。 Teacher表:在建表时,除了添加教师编号,教师姓名,部门必要字段,还可以添加 一些其他的字段,比如:出生日期、性别、和电话等。 Sc
3、or e 表:此表应该包括学生学号、课程号和成绩等。 Cour se 表:应包括课程号,对应的课程名称和教此课程的教师编号。 (1) 、建立一个数据库,然后在此数据库中建立这四个数据表。 (2) 、向表中添加记录。 (3) 、用一些查询语句来查看表中的特定记录。 (4) 、向表中添加一些字段。如:向 t eacher 表中添加字段 t el (5) 、创建一个自定义数据类型,并修改 st udent 表中的某个字段为此数据类型。 (6)、创建几个视图 查询某个班级的学生信息 查看每门课程的平均成绩 查看选修计算机课程的学生信息 查看所有男教师和所有男学生的信息 (7) 、创建几个存储过程 显示
4、成绩表中的课程号在课程表中且所任教师性别为男、计算机系的成绩表 显示某学生的学号,姓名,所学课程号,课程名称和对应的成绩 在执行此存储过程时,如果没有给出参数(学生姓名) ,则输入全部的学生的 学号,姓名,班级,任课教师编号及其姓名,所学课程名称和成绩,如果有, 则显示此学生的以上信息。 (8) 、创建触发器 在成绩表中建立一个触发器,当向表中添加记录时,此学生的成绩都乘以 1.2 检查学生的邮箱地址是否相同,如果相同,输出inserting fail,并且回滚事务; 如果不相同,则插入成功。 在成绩表建立一个触发器, 在向表中插入记录时, 检验插入的课程号是否在课 程表中的课程号的范围之内。 (9) 、创建规则,并绑定 在向成绩表中添加记录时,如果成绩 degree(select degree from score where sno=101 and cno=02) (2) 、查询课程号 01 大于课程号 02 的最大值、并以分数降序排序的成绩表中所有列 select * from score s where o=