SQLServer存储过程入门

Posted 涂山吕吕

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQLServer存储过程入门相关的知识,希望对你有一定的参考价值。

1、创建一个返回结果集的存储过程

create procedure firstpro
As
begin
    select * from dbo.Person
End

执行:
execute dbo.firstpro
View Code

如下图:

 

2、创建一个要求输入一个输入参数的存储过程

create procedure twopro
    @Id varchar(10) --定义一个输入参数
as
    select * from dbo.Person where Id = @Id  --要求Id列与输入的参数相等

执行:
execute dbo.twopro ‘1
View Code

如下图:

 

3、创建一个要求输入两个输入参数的存储过程

create procedure threepro    
    @Id int,  --定义一个输入参数
    @Name varchar(50)  --定义另一个输入参数
as
     select * from dbo.Person where Id =@Id and Name=@Name

执行:
execute dbo.threepro 1,’A’
View Code

如下图:

 

4、创建有返回值的存储过程

CREATE procedure fourpro1
    @Id int,
    @Name varchar(50),
    @returnage int output
as
    select @returnage = age from dbo.Person where @Id= Id and @Name=Name


执行:
    declare @returnage int  --声明一个变量用来接受执行存储过程的返回值

    execute dbo.fourpro1 2,\'B\',@returnage output

    select @returnage as age --给返回的列值取一个列名
    
View Code

如下图:

 

CREATE procedure p6
--定义两个输入参数
    @Id int,
    @Name varchar(50)
as
declare @returnId int --定义一个int类型的变量
    select @returnId = Id from dbo.Person where Id= @Id and Name=@Name
--return语句可以接受一个整型表达式(int,smallint,tinyint),而不是一个整型值
    return @returnName

执行:
declare @id int

execute @id= dbo.p6 2,\'B\'

select @id as id
View Code

如下图:

 

 

5、存储过程输入参数添加默认值

CREATE procedure fivepro
    @Id int=2,
    @Name varchar(50)= \'Bgh\'
as
    select * from dbo.Person where Id= @Id and Name=@Name

执行:
execute fivepro
View Code

 

备注:dbo.Person

以上是关于SQLServer存储过程入门的主要内容,如果未能解决你的问题,请参考以下文章

sqlserver

Java调用SQL Server的存储过程详解(转)

sqlserver存储过程如何定期删除表中的数据 求代码

求助,sqlserver2005存储过程如何返回这样的结果集

sqlserver利用存储过程去除重复行的sql语句

sqlserver 怎么更新存储过程