1、综合题一、1.使用Transact—SQL语言创建教学管理数据库,创建两个表学生信息(学号,姓名,性别,籍贯,班级编号)和成绩表(学号,课程编号,成绩,是否重修)。其中,学生信息表中学号为主键,其他信息都不允许为空。通过学号与成绩表形成一个一对多的关系,成绩表中的成绩的默认值为0,但必须在0~100之间。注:将学号设置为主键,主键名为pk_xh;为成绩添加默认值约束,约束名为df_xb,其值为“0”;为成绩添加check约束,约束名为诚恳ck_xb,在0~100之间。CREATE DATABASE 教学管理 use
2、 教学管理 go create table 学生信息 ( 学号 varchar(20) NOT NULL PRIMARY KEY, 姓名 varchar(20) NOT NULL , 性别 varchar(10) NOT NULL, 籍贯 varchar(20) NOT NULL, 班级编号 varchar(20) NOT NULL ) go create table 成绩表 ( 学号 varchar(20) NOT NULL FO
3、REIGN KEY REFERENCES 学生信息(学号), 课程编号 varchar(20) NOT NULL, 成绩 numeric(5,2) DEFAULT (0) CHECK(成绩)=0 and 成绩<=100) ,是否重修 varchar(8) NOT NULL ) go2.写出实现各查询功能的SELECT语句。(1)统计班级编号为1002的学生人数。(2)查询课程编号为“003”的课程成绩高于该门课程平均分的学生信息。(3)在“学生信息”表中找出姓“王”的学生信息。(4)
4、将“成绩”表中的课程编号为“001”的成绩增加10分。(5)列出每个同学的学号、姓名及选修课程的平均成绩情况,没有选修的同学也列出。3.创建一个名为stud_view2的视图,该视图可以用来查看每个学生的选修课程的门数和平均成绩。create view stud_view2asselect count(*)as课程门数,avg(grade)as平均成绩 from成绩表 group by 学号select * from stud_view2 4.(1)在“教学管理”数据库中创建一个带参数的存储过程proc_score。该存
6、业char20是班级char12是备注text是“课程”表结构课程(课号,课名,学分,先修课)“学期成绩”表结构选课(学号,课号,成绩)根据各题功能要求写出相应的T-SQL语句。1.写出在“学生信息”数据库中创建“学生”表的T-SQL语句,并在建表的同时创建所需约束。约束要求如下:将学号设置为主键,主键名为pk_xh;为姓名设置唯一约束,约束名为uk_xm;为性别添加默认约束,约束名为df_xb,其值为“男”。USE 学生信息 GO CREATE