本文主要是介绍SqlServer2012实例之存储过程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
--1、调用帮助系统来查找系统存储过程或函数来显示SQL Server的版本号及当前系统时间。(提示:到帮助中根据关键字等查询到对应的函数或存储过程来完成任务)代码截图和运行结果截图如下。
--3、将Course表上增加一个字段seleNUM,并编写存储过程:传入学号s_id和课程号--course_id后,完成在S_C表中插入相应的选课记录,并在Course表中对应课程的--seleNUM加1。调用该存储过程,
--测试执行结果。代码截图和运行结果截图如下
--4、创建一个存储过程,参数是学号s_id,输出信息是指定学号多对应的姓名、课程名称、成绩。
--运行时若没有指定学号,则提示“请输入学号”,若学号不存在,则提示“学号不存在”。
--5、创建一个存储过程Pro_Accum,利用while循环实现计算从1到输入参数n间各整数的累加计算功能,
--计算结果存入输出参数sum。并通过T-SQL调用定义的存储过程,计算1+2+…+100的累加和,并输出。
--1、调用帮助系统来查找系统存储过程或函数来显示SQL Server的版本号及当前系统时间。(提示:到帮助中根据关键字等查询到对应的函数或存储过程来完成任务)代码截图和运行结果截图如下。
select @@VERSION '版本号' ,GETDATE() '系统时间'
--2、创建一个存储过程,要求查询每位学生所选课程的平均成绩、最高成绩。调用该存储过程,
--测试执行结果。代码截图和运行结果截图如下。
create procedure PD1_selectresult
as
beginselect s_id 学号,avg(result) 平均成绩,max(result) 最高成绩from s_c group by s_id,course_id
endexec PD1_selectresult
--3、将Course表上增加一个字段seleNUM,并编写存储过程:传入学号s_id和课程号--course_id后,完成在S_C表中插入相应的选课记录,并在Course表中对应课程的--seleNUM加1。调用该存储过程,
--测试执行结果。代码截图和运行结果截图如下
alter table course
add seleNUM intselect * from courseupdate course
set seleNUM =(select count(s_id)from s_cwhere s_c.course_id=course.course_id)select * from coursecreate procedure PD2_course_record
@s_id char(10),
@course_id char(10)
as
begininsert into s_c (s_id,course_id)values(@s_id,@course_id)update courseset seleNUM =seleNUM +1where course_id=@course_id
endselect * from s_c
exec PD2_course_record '2016010101','0007'
select * from s_c
select * from course
--4、创建一个存储过程,参数是学号s_id,输出信息是指定学号多对应的姓名、课程名称、成绩。
--运行时若没有指定学号,则提示“请输入学号”,若学号不存在,则提示“学号不存在”。
create procedure PD2_print_result
@s_id char(10)=null
as
beginif @s_id is NULLprint '请输入学号'elsebegin if exists(select s_id from s_c where s_id = @s_id )beginselect student.s_id '学号', s_name '姓名',course.course_id '课程名称',result '成绩'from student,course,s_cwhere student.s_id =s_c.s_id and s_c.course_id =course.course_id and student.s_id =@s_id endelseprint'学号不存在'end
endexec PD2_print_result
exec PD2_print_result '2016010101'
exec PD2_print_result '2016010109'
--5、创建一个存储过程Pro_Accum,利用while循环实现计算从1到输入参数n间各整数的累加计算功能,
--计算结果存入输出参数sum。并通过T-SQL调用定义的存储过程,计算1+2+…+100的累加和,并输出。
create procedure Pro_Accum
@n int
as
begindeclare @sum int declare @i int set @sum=0set @i=1while(@i<=@n)beginset @sum = @sum+@iset @i=@i+1end print @sum
end exec Pro_Accum '100'
这篇关于SqlServer2012实例之存储过程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!