学习sql server存储过程 笔记

在学校学习sql的时候很多概念和方法都是很模糊的,今天在公司实习的时候看到了一个存储过程,借此自学巩固一下。

存储过程概念

存储过程是SQL语句和可选控制流语句的预编译集合,存储在数据库中,可由应用程序通过一个调用执行,而且允许用户声明变量、有条件执行以及其他强大的编程功能。这话比较简单也较官方,而我对存储过程的理解就是将固定的操作集放入数据库去执行,但与此同时,它也有自己的数据类型、流程控制和输入输出等。

下面是自己写的两个小例子来加深印象。

实例(1):创建存储过程

 1 create Procedure Pro
 2     @SID      varchar(10),            --代号
 3     @SName    varchar(10),       --名称
 4     @SType    varchar(10),         --类型
 5 as
 6 begin
 7    declare    @Status    int,                      --状态
 8    declare    @SQty      varchar(10),        --数量
 9   
10     set    @Status=0   --状态
11     set    @SQty=0      --数量
12 
13       select @SName=SName from test 
14        where Sid=@SID   and  @SType=SType    
15 if   @Status=7
16 begin 
17      set @Status    =@Status+'关闭'+char(10)+char(10)
18      select @Status Status
19 return
20 end

执行Pro这个存储过程,declare声明一个变量用来接收执行过存储过程后的返回值,@X代表一个变量。

实例(2):修改存储过程并执行

1 alter Procedure Pro
2      @SID   int = 2, 
3      @SName    varchar(10) = '%'
4  as
5  begin
6       select  *  from test 
7                  where Sid=@SID  
8                   and  @SType=SType 
9 execute Pro   2,'admin'    

     

     

   

原文地址:https://www.cnblogs.com/caidekoujiao/p/5213391.html