首页 > 代码库 > 步步为营-51-存储过程

步步为营-51-存储过程

说明 :存储过程类比C#中的方法

1.1 语法:create procedure 存储过程名称

@变量 类型[=默认值] [output],

@变量 类型[=默认值] [output] ,

...

as

begin

  内容

end

1.2 创建一个数据表,并添加数据

技术分享
use DemoDB
create table bank 
(
    cId char(4) primary key not null,
    balance money 
)
insert  into bank (cId,balance) Values(0001,1000);
insert  into bank (cId,balance) Values(0002,10);
select  * from bank;
View Code

1.3 创建存储过程
  1.3.1 存储过程Version:1.0

技术分享
--02  创建存储过程 ------
go
create procedure usp_转账_01
as
begin
    --02-01 捕获异常
    begin try
        --02-02 事务通过事务比较好
        begin transaction
            Update bank set balance = balance - 200 where cId = 0001
            Update bank set balance = balance + 200 where cId = 0002
        commit transaction
    end try
     
    BEGIN catch
        rollback transaction
    END catch
end

--03 执行存储过程---
exec usp_转账_01;
1.0

技术分享

  1.3.2 存储过程1.0没有办法指定某个账号及金额,而且也不知道是否转账成功.所以对其进行升级

步步为营-51-存储过程