实验七实验八

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验七

1.在查询分析器中,选择studentsdb数据库,输入以下代码。

DECLARE@stu name varchar(10)

SELECT@stu name=姓名

FORM student info

WHERE 姓名LIKE …张%‟

SELECT@stu name

观察显示的结果,与student info表中数据进行比较,@stu name赋值的是SELECT结果集中的哪个数据

2.定义int型局部变量@grademax、@grademin、@gradesum,在grade表中查找最高分、最低分和总分,分别赋给@grademax、@grademin和@gradesum,并显示。

3.使用SET命令将查询的结果数目赋值给int型局部变量@row。给下面代码中的划线处填上适当的内容,以完成上述操作。

4.以下代码在curriculum 表中插入新纪录:

DECLARE @intCId int,@intErrorCode int

INSERT INTO curriculum(课程编号,课程名称,学分)

VALUES(‟0006‟,‟VB程序设计‟,2)

SELECT@intCId = @ @identity,@intErrorCode = @@error

SELECT@intCId, @intErrorCode

将该代码段连续执行两次,观察两次显示的信息及curriculum表中数据的变化,为什么前后两次执行时显示的信息会不同?

5.在studentsdb数据库的student info表中,以“性别”为分组条件,分别统计男生和女生人数。

6.在grade表中,使用适当函数找出“高等数学”课程的最高分、最低分和平均分。

7.定义一个datetime型局部变量@student,以存储当前日期。计算student info表中的学生的年龄,并显示学生的姓名、年龄。在以下代码的划线部分填入适当内容,以实现上述功能。

8.运行以下代码,写出运行结果。

9.在局部变量@stu id中存储了学号值。编写代码查询学号为0001的学生的各科平均成绩,如果平均分>=60则显示“你的成绩及格了,恭喜你!!”,否则显示“你的成绩不及格”。

10.运行以下代码段,写出运行的结果。

11.查询grade表。如果分数大于等于90,显示A;如果分数大于等于80小于90,显示B;如果分数大于等于70小于80,显示C;如果分数大于等于60小于70,显示D;其他显示E。在以下代码的划线部分填入适当内容完成上述功能。

12.计算grade表的分数列的平均值。如果小于80,则分数增加其值的5%;如果分数的最高值超过95,则终止该操作。在以下代码划线处填入适当的内容以完成上述功能。

13.编写代码计算并显示@ n = 1+2+3+ (20)

14.编写代码计算并显示1~100之间的所有完全平方数。例如,81 = 92,则称81为完全平方数。

15.计算1~100以内的所有的素数。

实验八

1.在查询分析器中输入以下代码,创建一个利用流控制语句的存储过程lletters_print,该存储器能显示26个小写字母。

2.输入以下代码,创建存储过程stu_info,执行时通过输入姓名,可以查询该姓名对应的学生的各科成绩。

CREATE PROCEDURE stu_info @name varchar(40)

AS

SELECT a.学号,姓名,课程编号,分数

FROM student_info a INNER JOIN grade ta

ON a.学号=ta.学号

WHERE 姓名=@name

使用EXECUTE命令执行存储过程stu_info,其参数值为“马东”。

如果存储过程stu_info执行时没有提供参数,能按默认值查询(设姓名为“刘卫平”),如何修改该过程的定义?

3.使用studentsdb数据库中的student_info表,curriculm表、grade表。

(1)创建一个存储过程stu_grade,查询学号为0001的学生的姓名,课程名称,分数。

(2)执行存储过程stu_grade,查询0001学生的姓名,课程名称,分数。

(3)使用系统存储过程sp_rename将存储过程stu_grade更名为stu_g.

4.使用student_info表,curriculm表、grade表。

(1)创建一个带参数的存储过程stu_p_g,当任意输入一个学生的姓名时,将从3个表中返回该学生的学号,选修的课程名称和课程成绩。

(2)执行存储过程stu_g_p,查询“刘卫平”的学号,选修课程和课程成绩。

(3)使用系统存储过程sp_helptext,查看存储过程stu_p_g的文本信息。

5.使用student_info表。

(1)创建一个加密的存储过程stu_en,查询所有男学生的信息。

(2)执行存储过程stu_en,查看返回学生情况。

(3)使用Transact —SQL语句DROP PROCEDURE删除存储过程stu_en。

6.使用grade表。

(1)创建一个存储过程stu_g_r,当输入一个学生学号,通过返回输出参数获取该学生各门课程的平均成绩。

(2)执行存储过程stu_g_r,输入学号0002。

(3)使用Transact—SQL语句DROP PROCDURE删除存储过程stu_en.

相关文档
最新文档