欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 能源 > 【SQL Server数据库】存储过程的使用

【SQL Server数据库】存储过程的使用

2024/10/24 7:28:12 来源:https://blog.csdn.net/m0_67830223/article/details/139904282  浏览:    关键词:【SQL Server数据库】存储过程的使用

目录

一、要求

1.创建一个存储过程 Proc_Course,查看“0108”号课程的选修情况,包括学生学号、姓名和成绩,然后执行该过程

2.创建一个存储过程 Proc_SC1,通过学生学号来查询学生选修情况,默认查询学号为 “00001”的选修情况,包括学生学号、姓名和成绩。

3.修改并调用上面的存储过程,求出学号为“000503003” 的学生不及格的选修情况。

4.编写存储过程 Proc_jiecheng,求 n!。并执行此存储过程,求 5!

5.删除存储过程 Proc_jiecheng


一、要求

1.创建一个存储过程 Proc_Course,查看“0108”号课程的选修情况,包括学生学号、姓名和成绩,然后执行该过程

use school
go
create procedure proc_course
as
select student.stu_id, stu_name, gradefrom student join studentgrade on student.stu_id = studentgrade.stu_idwhere course_id = '0108'
exec proc_course

2.创建一个存储过程 Proc_SC1,通过学生学号来查询学生选修情况,默认查询学号为 “00001”的选修情况,包括学生学号、姓名和成绩。

use school
go
create proc proc_sc1
@sno varchar(9) = '000001'
asselect student.stu_id, stu_name, gradefrom student join studentgrade on student.stu_id = studentgrade.stu_idwhere student.stu_id = @sno
exec proc_sc1 @sno = '000503001'

3.修改并调用上面的存储过程,求出学号为“000503003” 的学生不及格的选修情况。

use school
go
alter proc proc_sc1
@sno varchar(9) = '000001',
--注意:当变量有默认值时,不能用 declare 声明变量。
@markpass int
asselect student.stu_id, stu_name, gradefrom student join studentgrade on student.stu_id = studentgrade.stu_idwhere student.stu_id = @sno and grade < @markpass
exec proc_sc1 @sno='000503003', @markpass = 60

4.编写存储过程 Proc_jiecheng,求 n!。并执行此存储过程,求 5!

create proc proc_jiecheng@n int
--此处声明的为输入输出参数
as
declare @i int
--此处声明的为存储过程内部使用的变量
declare @sum bigintset @i = 1set @sum = 1
while @i <= @nbeginset @sum = @sum * @iset @i = @i + 1
end
print @sum
exec proc_jiecheng @n = 5

5.删除存储过程 Proc_jiecheng

drop proc proc_jiecheng

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com