数据库存储过程

使用存储过程实例:

  1. 不带参数
    create procedure proc_select_officeinfo--(存储过程名)
    as select Id,Name from Office_Info--(sql语句)
    
    exec proc_select_officeinfo--(调用存储过程)

     

  2. 带参数
    create procedure procedure_proc_GetoffinfoById --(存储过程名)
    @Id int--(参数名 参数类型)
    as select Name from dbo.Office_Info where Id=@Id--(sql语句)
    
    exec procedure_proc_GetoffinfoById 2--(存储过程名称之后,空格加上参数,多个参数中间以逗号分隔)
    
    注:参数赋值是,第一个参数可以不写参数名称,后面传入参数,需要明确传入的是哪个参数名称

     

  3. 带输入输出参数
    create procedure proc_office_info--(存储过程名)
    @Id int,@Name varchar(20) output--(参数名 参数类型)传出参数要加上output
    as 
    begin
    select @Name=Name from dbo.Office_Info where Id=@Id --(sql语句)
    end
    declare @houseName varchar(20) --声明一个变量,获取存储过程传出来的值
    exec proc_office_info--(存储过程名)
    4,@houseName output--(传说参数要加output 这边如果用@变量 = OUTPUT会报错,所以换一种写法)
    select @houseName--(显示值)

     

  4. 带返回值
    create procedure proc_office_info--(存储过程名)
    @Id int--(参数名 参数类型)
    as 
    begin
    if(select Name from dbo.Office_Info where Id=@Id)=null --(sql语句)
    begin
    return -1
    end
    else
    begin
    return 1
    end
    end
    
    declare @house varchar(20) --声明一个变量,获取存储过程传出来的值
    exec @house=proc_office_info 2 --(调用存储过程,用变量接收返回值)
    --注:带返回值的存储过程只能为int类型的返回值
    print @house

     

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值