第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讲)

《算法零基础》第18讲:线性枚举- 统计法入门

更改片段内布局的按钮

oracle创建存储过程时,提示错误是:错误(5,18): PL/SQL: ORA-00947: 没有足够的值?代码如下:

当活动被破坏但我必须继续执行片段中的代码时该怎么办?

第18讲 逻辑块的结构与编程