存储过程的基本语法与事务的基本概念

  • 事务
    1. 开始事务
      1. Begin transaction
    2. 提交事务
      1. Commit transaction
    3. 回滚事务
      1. Rollback transaction

 

例如:银行转账的典型案例

语法:

Begin transition   --开始事务

Declare @money int  --定义变量来判断sql语句是否报错

Update bank set money = money - 100 where person = ‘张总’  -- 张总的账户减少100万

@money = @@error             --@@error 判断上一句SQL语句是否错误

Update bank set money = money - 100 where person = ‘李总’  -- 张总的账户钱增加100万

@money = @money + @@error

 

If(@@money = 0)

Begin

Commit            --提交事务

End

Else

Begin

Rollback         --回滚事务

end

 

@@error 系统变量:判断上一条SQL语句是否出错,如果出错返回值不等于0,不出错,返回值就是0

 

 

 

  • 存储过程
    1. 创建存储过程
      1. Create procedure proc_name

@变量名  数据类型  =  默认值          --参数

@变量名  数据类型  =  默认值  out/output   --输出参数

as  

Begin

@变量名 数据类型

SQL语句

End

go

 

out与output的区别:

相同点:都是输出参数

不同点:out只能指明输出参数是谁,不能够给参数赋值

Output可以赋值 ,而且在存储过程中可以当作变量来使用

 

 

  • 字符串截取常见的方法
    1. Select left(‘hello word’,4)  ==>hell  ---第一个参数是要截取的字符串,第二个参数是截取长度
    2. Select right(‘hello word’,4)  ==>word
    3. Substring(‘hello word’,1,3)  ==>hel   --第一个参数是要截取的字符串,第二个参数是从那个位置开始截取,第三个参数是截取到那个位置
  • 去掉空格的方法
    1. Select ltrim(‘    hello  word’)   --去掉左边的空格
    2. Select ltrim(‘ hello  word     ’)   --去掉右边的空格
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值