sql server存储过程入门

创建存储过程的基本语法:(无参数存储过程)

create procedure p1
as
begin
sql 语句
end
go

其中begin 和 end可以省略
在sql server服务器端执行的语句为:exec p1

创建只有输入参数的存储过程:

create procedure p1(@id int)
as
select * from 表1 where id=@id
go

在sql server服务器端执行的语句为:exec p1 1
直接在存储过程名后面加上要传入的参数即可

创建带有一个输入参数,一个输出参数的存储过程:
传入参数的后面需要加上out关键字,
如果不加关键字,默认为传入参数

create procedure p1(@id int,@studentname varchar(200) out)
as
select @studentname= name from 表1 where id=@id
go

在sql server服务器端执行的语句为:

declare @StudentName as nvarchar(200)  -- 声明输出参数
exec p1 1,@StudentName output
select @StudentName  --select语句可以查看结果```
直接在存储过程名后面加上要传入的参数和输出参数并加上output关键字即可
*注意:*输出参数不要和存储过程定义里面的输出参数重名

---
**创建带有多个输出参数的存储过程**
和带有一个输出参数的是类似的写法

create procedure p1(@id int,@studentname varchar(200) out@studenttele varchar(200) out)
as
select @studentname= name,@studenttele=tele from 表1 where id=@id
go

declare @StudentName as nvarchar(200) — 声明第一个输出参数
declare @StudentTele as nvarchar(200) — 声明第二个输出参数
exec p1 1,@StudentName output,@StudentTele output
select @StudentName, @StudentTele –select语句可以查看结果“`

有时候,我们创建前需要判定是否存在,存在则删除,只需要在创建之前执行如下sql:

 if exists(select * from sysobjects where name='p1' and type='P') 
 drop procedure p1
 go

修改存储过程的sql:

alter procedure p1
as
sql语句
go
    原文作者:三思吾
    原文地址: https://www.jianshu.com/p/f4cf61ccbd0f
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞