简单的SQLSever数据库问题
题目是这样的: 编写存储过程“学生成绩统计分析”,带一输入参数“@学号”,其开始代码严格如下: CREATE PROCEDURE 学生成绩统计分析 @学号 Char(10) AS 要求此存储过程实现的功能是:根据输入参数“@学号”指定的学生,先计算该生的平均总评成绩(保留2位小数),然后: (1)将该生的学习状况添加到表“学生学习状况”中(其xID列为自动赋值),“评价”列的取值为:优秀、一般或较差,优秀的标准是平均总评成绩>=90,较差的标准是平均总评成绩<60,其余情况则为一般。往该表中添加记录的程序示例:假定@学号中指定学生的@平均总评成绩为95.73 INSERT INTO 学生学习状况 (学号, 姓名, 平均总评成绩, 评价) SELECT @学号, X.姓名, @平均总评成绩, '优秀' FROM 学生 X WHERE X.学号 = @学号 (2)若平均总评成绩在90分以上,则查询出该学生总评成绩>=90的课程,并添加到表“优秀课程”表中(其kID列为自动赋值)。往该表中添加记录的程序示例:假定@学号中指定学生的@平均总评成绩为95.73,现需将该生总评成绩在70~80间的课程添加到该表中 INSERT INTO 优秀课程 (学号, 课程名称, 总评成绩) SELECT C.学号, K.课程名称, C.总评成绩 FROM 成绩 C, 课程 K WHERE C.学号=@学号 and C.总评成绩 between 70 and 80 and K.课程代码=C.课程代码 (3)若平均总评成绩在60分以下,则查询出该学生总评成绩<60的课程,并添加到表“不及格课程”表中(其kID列为自动赋值)。 -------------------------------------------------------------------- 我的解答是这样的: CREATE PROCEDURE 学生成绩统计分析 @学号 Char(10),@平均总评成绩 tinyint(1),@评价 char(10) AS select @平均总评成绩=总评成绩 from 成绩 where @学号=学号 INSERT INTO 学生学习状况 (学号, 姓名, 平均总评成绩, 评价) SELECT @学号, X.姓名, @平均总评成绩, set @评价=(case @平均总评成绩 when @平均总评成绩>=90 then '优秀' when @平均总评成绩<60 then '较差' when @平均总评成绩>=60 and @平均总评成绩<90 then '一般' end) FROM 学生 X WHERE X.学号 = @学号 INSERT INTO 优秀课程 (学号, 课程名称, 总评成绩) SELECT C.学号, K.课程名称, C.总评成绩 FROM 成绩 C, 课程 K WHERE C.学号=@学号 and C.总评成绩>=90 and K.课程代码=C.课程代码 INSERT INTO 不及格课程 (学号, 课程名称, 总评成绩) SELECT C.学号, K.课程名称, C.总评成绩 FROM 成绩 C, 课程 K WHERE C.学号=@学号 and C.总评成绩<60 and K.课程代码=C.课程代码 ==================================================================== 检查语法时老是报错说是有语法错误,那位高人帮忙指点一下,先谢谢啦
答:现在的版本里,SQL2005和2008都不是很稳定,所以还没有太多的企业应用,现在SQL2000还是混得开的,SQL2000加个SP4补丁,现在很稳定。至于SQ...详情>>
答:不知道你是不是写错文件名了,pdf?详情>>
答:当电脑的全部组件(包括软件)我们国家都能生产的时候。详情>>