--存储过程
--定义变量
declare @bianliang int
set @bianliang =12 --变量赋值
select @bianliang
print @biangliang
--定义两个变量求和
declare @bianliang1 int, @bianliang2 int
set @bianliang1 =1 --给变量赋值用set
set @bianliang2 =2
select @bianliang1+@bianliang2
--创建存储过程
create proc chaxun --存储过程的名字
as-- as...go 中间写存储过程内容
select *from cangku
go
--存储过程创建之后,会存储到对应数据库的可编程性——>存储过程文件夹
exec chaxun --执行存储过程
--带返回值的存储过程
create proc cangkushaaa
as
declare @a int
select @a=COUNT(*) from cangkubiao --查询结果赋值给了变量@a
return @a
go
declare @jiesou int --定义一个变量接收存储过程的返回值
exec @jiesou=cangkushaaa --在执行存储过程中,用变量去接收返回值,就是等于走cangkushaaa这个函数的过程得到最终结果
print @jiesou --输出接收结果
--带输入参数的存储过程
create proc suanjiafa --创建一个存储过程,suanjiafa是函数名
@a int, --输入参数:逗号隔开,放在as和存储过程之间
@b int --输入参数
as --函数体
return @a+@b
go
declare @a int --定义一个接受变量
exec @a=suanjiafa 3,5 --带参数的存储过程,需要在存储过程中输入参数,空格隔开,参数之间用逗号隔开,3代表@a,5代表@b
--在这里输入参数,就是这两个参数在suanjiafa这个参数中走的过程中所得到的结果
print @a
--输入一个0-100的数
create proc panduanshuzi --创建存储过程 panduanhanshu就表示这个函数
@a int --存储过程的输入参数,定义一个变量
as --在as和go 之间就是函数体
if @a>=0 and @a<10
begin
return 1
end
else if @a>=10 and @a<100
begin
return 1
end
else
begin
return -1
end
go
declare @a int --定义一个新变量
exec @a=panduanshuzi 100 --100是输入的参数 用这个定义的新变量接受 panduanshuzi函数的最终值。
--结果就是100 在panduanshuzi 这个函数体里所走的过程
print @a --输出最终结果 ,相当于c#语言里的console .write