第18讲++存储过程
Posted 该☆隐
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第18讲++存储过程相关的知识,希望对你有一定的参考价值。
创建1个简单的存储过程p1,查询所有学生的学号、姓名、课程号和成绩信息,并按成绩降序排列。
create procedure p1 as select xsqk.学号,姓名,课程号,成绩 from xsqk, xs_kc where xsqk.学号=xs_kc.学号 order by 4 desc go exec p1 --执行存储过程
创建1个带有输入参数的存储过程p2,查询指定课程号(作为输入参数)的学生成绩信息。
create proc p2 @kch char(3)=‘101’ --有默认值的输入形参:接收外部传递的数据 as select * from xs_kc where 课程号= @kch go exec p2 --(1)使用默认值执行存储过程 exec p2 ‘102’ --(2)按位置传递参数 exec p2 @kch=‘103’ --(3)通过参数名传递参数
创建并执行带输入参数的存储过程p3,查询指定学号(作为输入参数)的学生姓名、性别和所选课程号。
create proc p3 @xh char(10) as select 姓名,性别,课程号 from xsqk , xs_kc where xsqk.学号=xs_kc.学号 and xsqk.学号= @xh go exec p3 ‘2012130101’ --(1)按位置传递参数 exec p3 @xh=‘2012130102‘ --(2)通过参数名传递参数 --注意:因输入参数没有默认值,所以不能用“exec p3”
创建1个带有输入参数和输出的存储过程p4,返回指定教师(作为输入参数)所授课程的课程号(作为输出参数)。
create proc p4 @skjs varchar(20), @kch char(3) output as select @kch=课程号 from kc where 授课教师=@skjs go declare @skjs varchar(20), @kch char(3) set @skjs=\'王颐\' exec p_kch @skjs, @kch output print @skjs+\'教师所授课程的课程号为:\'+@kch
以上是关于第18讲++存储过程的主要内容,如果未能解决你的问题,请参考以下文章
深入浅出计算机组成原理:GPU(下)-为什么深度学习需要使用GPU?(第31讲)
oracle创建存储过程时,提示错误是:错误(5,18): PL/SQL: ORA-00947: 没有足够的值?代码如下: